0

我一直在使用谷歌雲/的Java /標準AppEngine上開始了一個新的項目。這個非常簡單的項目包含根據Google Cloud Endpoints框架的端點/ API。在雲上運行時,一切都按預期運行。當本地運行,它不會在所有的啓動,我得到下面這個異常:谷歌雲/標準AppEngine上:運行的應用程序在本地失敗

juil. 27, 2017 3:37:32 PM com.google.appengine.tools.development.SystemPropertiesManager setSystemProperties 
INFOS: Overwriting system property key 'java.util.logging.config.file', value 'd:\devtools\CloudSDK\google-cloud-sdk\platform\google_appengine\google\appengine\tools\java\config\sdk\logging.properties' with value 'WEB-INF/logging.properties' from 'D:\workspaces\googlecloud\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\jaime-sortir\WEB-INF\appengine-web.xml' 
2017-07-27 15:37:32.782:INFO::main: Logging initialized @907ms 
2017-07-27 15:37:33.236:INFO:oejs.Server:main: jetty-9.3.18.v20170406 
2017-07-27 15:37:37.496:INFO:oeja.AnnotationConfiguration:main: Scanning elapsed time=3911ms 
2017-07-27 15:37:38.133:INFO:oejs.AbstractConnector:main: Started [email protected]{HTTP/1.1,[http/1.1]}{localhost:8080} 
Exception in thread "main" java.lang.IllegalAccessError: com/google/appengine/repackaged/com/google/common/base/Platform 
    at com.google.appengine.repackaged.com.google.common.base.Ticker$1.read(Ticker.java:69) 
    at com.google.appengine.repackaged.com.google.common.base.Stopwatch.elapsedNanos(Stopwatch.java:181) 
    at com.google.appengine.repackaged.com.google.common.base.Stopwatch.elapsed(Stopwatch.java:194) 
    at com.google.appengine.repackaged.com.google.common.cache.LocalCache$LoadingValueReference.elapsedNanos(LocalCache.java:3665) 
    at com.google.appengine.repackaged.com.google.common.cache.LocalCache$Segment.getAndRecordStats(LocalCache.java:2381) 
    at com.google.appengine.repackaged.com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2336) 
    at com.google.appengine.repackaged.com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2294) 
    at com.google.appengine.repackaged.com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2207) 
    at com.google.appengine.repackaged.com.google.common.cache.LocalCache.get(LocalCache.java:4062) 
    at com.google.appengine.repackaged.com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4066) 
    at com.google.appengine.repackaged.com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4995) 
    at com.google.appengine.repackaged.com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5001) 
    at com.google.appengine.api.appidentity.AppIdentityServiceImpl.getAccessToken(AppIdentityServiceImpl.java:272) 
    at endpoints.repackaged.com.google.api.client.googleapis.extensions.appengine.auth.oauth2.AppIdentityCredential.intercept(AppIdentityCredential.java:98) 
    at endpoints.repackaged.com.google.api.client.googleapis.extensions.appengine.auth.oauth2.AppIdentityCredential$AppEngineCredentialWrapper.intercept(AppIdentityCredential.java:243) 
    at endpoints.repackaged.com.google.api.client.http.HttpRequest.execute(HttpRequest.java:868) 
    at endpoints.repackaged.com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:419) 
    at endpoints.repackaged.com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:352) 
    at endpoints.repackaged.com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:469) 
    at endpoints.repackaged.com.google.api.config.ServiceConfigSupplier.fetchLatestServiceVersion(ServiceConfigSupplier.java:154) 
    at endpoints.repackaged.com.google.api.config.ServiceConfigSupplier.fetch(ServiceConfigSupplier.java:125) 
    at endpoints.repackaged.com.google.api.config.ServiceConfigSupplier.get(ServiceConfigSupplier.java:110) 
    at endpoints.repackaged.com.google.api.config.ServiceConfigSupplier.get(ServiceConfigSupplier.java:49) 
    at endpoints.repackaged.com.google.common.base.Suppliers$ExpiringMemoizingSupplier.get(Suppliers.java:199) 
    at endpoints.repackaged.com.google.api.config.ServiceConfigFetcher.fetch(ServiceConfigFetcher.java:41) 
    at com.google.api.control.ServiceManagementConfigFilter$1.load(ServiceManagementConfigFilter.java:33) 
    at com.google.api.control.ConfigFilter.init(ConfigFilter.java:87) 
    at org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:139) 
    at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:873) 
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:349) 
    at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1406) 
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1368) 
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:778) 
    at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:262) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:522) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) 
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131) 
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105) 
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) 
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131) 
    at org.eclipse.jetty.server.Server.start(Server.java:422) 
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105) 
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61) 
    at org.eclipse.jetty.server.Server.doStart(Server.java:389) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) 
    at com.google.appengine.tools.development.jetty9.JettyContainerService.startContainer(JettyContainerService.java:346) 
    at com.google.appengine.tools.development.AbstractContainerService.startup(AbstractContainerService.java:284) 
    at com.google.appengine.tools.development.ManualInstanceHolder.startUp(ManualInstanceHolder.java:77) 
    at com.google.appengine.tools.development.AbstractModule.startup(AbstractModule.java:87) 
    at com.google.appengine.tools.development.Modules.startup(Modules.java:105) 
    at com.google.appengine.tools.development.DevAppServerImpl.doStart(DevAppServerImpl.java:271) 
    at com.google.appengine.tools.development.DevAppServerImpl.access$000(DevAppServerImpl.java:47) 
    at com.google.appengine.tools.development.DevAppServerImpl$1.run(DevAppServerImpl.java:219) 
    at com.google.appengine.tools.development.DevAppServerImpl$1.run(DevAppServerImpl.java:217) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerImpl.java:217) 
    at com.google.appengine.tools.development.DevAppServerMain$StartAction.apply(DevAppServerMain.java:359) 
    at com.google.appengine.tools.util.Parser$ParseResult.applyArgs(Parser.java:47) 
    at com.google.appengine.tools.development.DevAppServerMain.run(DevAppServerMain.java:223) 
    at com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMain.java:214) 

我開始從有關Eclispe/Windows 7的我的本地服務器按堆棧跟蹤,它看起來像它處理時崩潰Oauth2的東西(API不受限制,但它指的是一些安全對象)。

我一直在谷歌搜索在谷歌這個問題,並沒有發現什麼。我有另一個示例項目沒有任何終端在Windows上運行良好。以下是我的pom.xml

<project> 
    <modelVersion>4.0.0</modelVersion> 
    <packaging>war</packaging> 
    <version>1.0-SNAPSHOT</version> 

    <groupId>zango.jaimesortir</groupId> 
    <artifactId>jaimesortir-api</artifactId> 

    <!-- <parent> <artifactId>appengine-java8-samples</artifactId> <groupId>com.google.cloud</groupId> 
     <version>1.0.0</version> <relativePath>..</relativePath> </parent> --> 

    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 

     <endpoints.framework.version>2.0.7</endpoints.framework.version> 
     <endpoints.management.version>1.0.4</endpoints.management.version> 

     <endpoints.project.id>xxxxx</endpoints.project.id> 
     <maven.compiler.target>1.8</maven.compiler.target> 
     <maven.compiler.source>1.8</maven.compiler.source> 

     <appengine.maven.plugin>1.3.1</appengine.maven.plugin> 

     <appengine.version>1.9.54</appengine.version> 
     <appengine.sdk.version>1.9.54</appengine.sdk.version> 

     <!-- <project.http.version>1.19.0</project.http.version> <project.oauth.version>1.19.0</project.oauth.version> --> 

     <maven.compiler.target>1.8</maven.compiler.target> 
     <maven.compiler.source>1.8</maven.compiler.source> 

    </properties> 

    <prerequisites> 
     <maven>3.3.9</maven> 
    </prerequisites> 

    <dependencies> 
     <!-- Compile/runtime dependencies --> 
     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>javax.servlet-api</artifactId> 
      <version>3.1.0</version> 
      <type>jar</type> 
      <scope>provided</scope> 
     </dependency> 

     <dependency> 
      <groupId>com.google.endpoints</groupId> 
      <artifactId>endpoints-framework</artifactId> 
      <version>${endpoints.framework.version}</version> 
     </dependency> 
     <dependency> 
      <groupId>com.google.endpoints</groupId> 
      <artifactId>endpoints-management-control-appengine-all</artifactId> 
      <version>${endpoints.management.version}</version> 
     </dependency> 

     <dependency> 
      <groupId>com.google.appengine</groupId> 
      <artifactId>appengine-api-1.0-sdk</artifactId> 
      <version>${appengine.version}</version> 
     </dependency> 

    </dependencies> 

    <profiles> 
     <profile> 
      <id>GetSwaggerDoc</id> 
      <activation> 
       <property> 
        <name>GetSwaggerDoc</name> 
       </property> 
      </activation> 
      <build> 
       <plugins> 
        <plugin> 
         <groupId>org.codehaus.mojo</groupId> 
         <artifactId>exec-maven-plugin</artifactId> 
         <version>1.4.0</version> 
         <configuration> 
          <includePluginDependencies>true</includePluginDependencies> 
          <mainClass>com.google.api.server.spi.tools.EndpointsTool</mainClass> 
          <arguments> 
           <argument>get-swagger-doc</argument> 
           <argument>--hostname=echo-api.endpoints.${endpoints.project.id}.cloud.goog</argument> 
           <argument>--war=target/jaimesortir-api-1.0-SNAPSHOT</argument> 
           <argument>zango.jaimesortir.api.LocationApi</argument> 
          </arguments> 
         </configuration> 
         <dependencies> 
          <dependency> 
           <groupId>com.google.endpoints</groupId> 
           <artifactId>endpoints-framework-tools</artifactId> 
           <version>${endpoints.framework.version}</version> 
          </dependency> 
          <dependency> 
           <groupId>com.google.appengine</groupId> 
           <artifactId>appengine-api-1.0-sdk</artifactId> 
           <version>${appengine.sdk.version}</version> 
          </dependency> 
         </dependencies> 
        </plugin> 
       </plugins> 
      </build> 
     </profile> 
    </profiles> 

    <build> 
     <!-- for hot reload of the web application --> 
     <outputDirectory>${project.build.directory}/${project.build.finalName}/WEB-INF/classes</outputDirectory> 
     <plugins> 

      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-war-plugin</artifactId> 
       <version>2.6</version> 
       <configuration> 
        <webResources> 
         <resource> 
          <directory>${basedir}/src/main/webapp/WEB-INF</directory> 
          <filtering>true</filtering> 
          <targetPath>WEB-INF</targetPath> 
         </resource> 
        </webResources> 
       </configuration> 
      </plugin> 

      <plugin> 
       <groupId>com.google.cloud.tools</groupId> 
       <artifactId>appengine-maven-plugin</artifactId> 
       <version>${appengine.maven.plugin}</version> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

任何人都可以幫忙嗎?

謝謝。

回答

0

發佈我的問題後,我仔細檢查了,發現我忘了執行以下命令,在本教程

gcloud auth application-default login 

現在表示,它開始。感謝任何試圖幫助的人。

相關問題