Фреймворки конечных точек облака App Engine (Java) - исключение NullPointerException при локальном запуске
Я следовал инструкциям для Quickstart для облачных фреймворков конечных точек в App Engine (Java), и все работает, кроме запуска его локально. Когда я бегу mvn appengine:run
Я получаю сообщения об ошибках, получаю только 503 для /_ah/ запуска (с бесконечными автоматическими повторными попытками) и вижу трассировку стека NullPointerException. Я вижу:
[INFO] GCLOUD: May 28, 2017 10:14:35 PM com.google.apphosting.utils.jetty.JettyLogger warn
[INFO] GCLOUD: WARNING: failed endpoints-api-configuration: java.lang.NullPointerException
[INFO] GCLOUD: May 28, 2017 10:14:35 PM com.google.apphosting.utils.jetty.JettyLogger warn
[INFO] GCLOUD: WARNING: Failed startup of context com.google.appengine.tools.development.DevAppEngineWebAppContext@45b4c3a9{/,/Users/clay/java-docs-samples/appengine/endpoints-frameworks-v2/backend/target/echo-1.0-SNAPSHOT}
[INFO] GCLOUD: java.lang.NullPointerException
[INFO] GCLOUD: at com.google.appengine.api.appidentity.AppIdentityServicePb$GetAccessTokenResponse$Builder.setAccessToken(AppIdentityServicePb.java:6221)
[INFO] GCLOUD: at com.google.appengine.api.appidentity.dev.LocalAppIdentityService.getAccessToken(LocalAppIdentityService.java:160)
[INFO] GCLOUD: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[INFO] GCLOUD: at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[INFO] GCLOUD: at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[INFO] GCLOUD: at java.lang.reflect.Method.invoke(Method.java:498)
[INFO] GCLOUD: at com.google.appengine.tools.development.ApiProxyLocalImpl$AsyncApiCall.callInternal(ApiProxyLocalImpl.java:541)
[INFO] GCLOUD: at com.google.appengine.tools.development.ApiProxyLocalImpl$AsyncApiCall.call(ApiProxyLocalImpl.java:484)
[INFO] GCLOUD: at com.google.appengine.tools.development.ApiProxyLocalImpl$AsyncApiCall.call(ApiProxyLocalImpl.java:461)
[INFO] GCLOUD: at java.util.concurrent.Executors$PrivilegedCallable$1.run(Executors.java:533)
[INFO] GCLOUD: at java.security.AccessController.doPrivileged(Native Method)
[INFO] GCLOUD: at java.util.concurrent.Executors$PrivilegedCallable.call(Executors.java:530)
[INFO] GCLOUD: at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[INFO] GCLOUD: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[INFO] GCLOUD: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[INFO] GCLOUD: at java.lang.Thread.run(Thread.java:745)
Я попробовал на отдельной системе / ОС и получил те же результаты. Я что-то пропустил? Или что-то изменилось, и документы еще не были обновлены? Возможность отладки локально очень важна
1 ответ
Решение
Бежать gcloud auth application-default login
чтобы исправить эту проблему. Я буду обновлять официальные документы. Приносим извинения за доставленные неудобства!