GAE 部署错误需要多次部署我的应用程序才能工作

问题描述

就在最近,我的 GAE 应用程序停止工作,无法连接到云存储以及其他一些问题。我正在使用 GAE 和 Spring Boot Rest Api。

当我多次在同一版本上部署应用程序时,其中一个随机运行。简直是疯了。

只要它不起作用,我就会收到不同的错误,例如:

java.lang.NoClassDefFoundError: io/jsonwebtoken/io/SerializationException

有时我会遇到另一个错误

NoSuchMethodError: com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;J)V

如果我使用 IntelliJ 多次部署应用程序,神奇的是,其中一个部署没有出现任何错误。 GAE 部署有什么进展吗?

我使用了最新版本的 BOM 来防止我的 Maven 库中的任何冲突,但仍然没有运气。上周它突然发生了,甚至没有更改代码。我在网上使用的版本今天停止工作,我不得不多次部署该应用程序,直到其中一个工作。

该应用在我的本地机器上运行良好。

解决方法

遇到此问题的任何人。您需要将 appengine-api-1.0-sdkgoogle-cloud-storage 更新到最新版本。我使用 Maven 来更新和修复问题。

由于使用 io.jsonwebtoken,我也遇到了多个错误。错误是:

io.jsonwebtoken.security.weakkeyexception: The verification key's size is 48 bits which is not secure enough for the HS256 algorithm

我将 JWT 更改为 auth0 库,现在可以使用了。

猜猜为什么会发生这些事情?因为谷歌更新了他们的 GAE 的一些结构,如果你不更新你的应用引擎,你将在一个永久的调试周期中得到无限数量的错误。我希望当人们做出影响许多网站的巨大变化时,Google 会及时更新。