Внезапно появляется NoSuchFieldError: usingExperimentalRuntime в App Engine с библиотеками GCE - PullRequest
0 голосов
/ 10 июля 2020

Я только что сделал PU sh (без изменений кода) своего приложения App Engine, и оно начало выдавать:

java.lang.NoSuchFieldError: usingExperimentalRuntime
at
com.google.appengine.api.memcache.MemcacheServicePb$MemcacheGetRequest.getSerializedSize (MemcacheServicePb.java:1597)
at
com.google.appengine.repackaged.com.google.protobuf.AbstractMessageLite.toByteArray (AbstractMessageLite.java:44)
at
com.google.appengine.api.memcache.MemcacheServiceApiHelper.makeAsyncCall (MemcacheServiceApiHelper.java:97)
at
com.google.appengine.api.memcache.AsyncMemcacheServiceImpl.doGet (AsyncMemcacheServiceImpl.java:405)
at
com.google.appengine.api.memcache.AsyncMemcacheServiceImpl.get (AsyncMemcacheServiceImpl.java:412)
at
com.google.appengine.api.memcache.MemcacheServiceImpl.get (MemcacheServiceImpl.java:49)
at
com.google.appengine.api.appidentity.AppIdentityServiceImpl.getAccessToken (AppIdentityServiceImpl.java:288)
at
com.google.api.client.googleapis.extensions.appengine.auth.oauth2.AppIdentityCredential.intercept (AppIdentityCredential.java:98)
at
com.google.api.client.googleapis.extensions.appengine.auth.oauth2.AppIdentityCredential$AppEngineCredentialWrapper.intercept (AppIdentityCredential.java:243)
at
com.google.api.client.http.HttpRequest.execute (HttpRequest.java:868)
at
com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed (AbstractGoogleClientRequest.java:419)
at
com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed (AbstractGoogleClientRequest.java:352)
at
com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute (AbstractGoogleClientRequest.java:469)
at

Я использую версию 1.9.80 со следующими зависимостями:

appengine-api-1.0-sdk appengine-tools-sdk appengine-maven-plugin

Я никоим образом не менял зависимости или код с момента моего последнего успешного pu sh несколько недель назад go. Я просто выполнил:

mvn clean install
mvn appengine:update

, и он успешно развернулся.

Мой сервис мертв в воде, так как я не могу откатиться назад.

Все вопросы, которые я видел по этому поводу, были с go, и они рекомендовали перейти на версию 1.9.49. Мы уже прошли через это. Какой magi c мне нужен, чтобы все мои зависимости перестали искать несуществующие поля в других зависимостях?

1 Ответ

0 голосов
/ 14 июля 2020

В этом конкретном случае, если вы заметили следующее сообщение об ошибке java .lang.NoSuchFieldError: usingExperimentalRuntime , и ваши зависимости были недавно обновлены до более новой версии, убедитесь, что у вас установлена все JAR обновлены до вашей текущей версии, а не до предыдущих версий.

Например, смешивание некоторых JAR из версии 1.9.78 и некоторых других из версии 1.9.80 может вызвать эту проблему. Поэтому вам следует переместить все ваши JAR-файлы в версию 1.9.80 .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...