Google app engine 在bigquery中创建数据集时google App engine出错

Google app engine 在bigquery中创建数据集时google App engine出错,google-app-engine,google-bigquery,Google App Engine,Google Bigquery,我正在开发一个应用程序引擎应用程序,用于从BigQuery进行查询。当我创建一个bigquery实例,然后我想创建一个数据集或获取对数据集的引用时,会发生以下错误。这只发生在我在app Engine上部署应用程序时,但当我使用本地app Engine sdk测试我的应用程序时,我没有任何问题 java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util

我正在开发一个应用程序引擎应用程序,用于从BigQuery进行查询。当我创建一个bigquery实例,然后我想创建一个数据集或获取对数据集的引用时,会发生以下错误。这只发生在我在app Engine上部署应用程序时,但当我使用本地app Engine sdk测试我的应用程序时,我没有任何问题

java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;
at com.google.api.gax.retrying.BasicRetryingFuture.<init> (BasicRetryingFuture.java:77)
at com.google.api.gax.retrying.DirectRetryingExecutor.createFuture (DirectRetryingExecutor.java:75)
at com.google.cloud.RetryHelper.runWithRetries (RetryHelper.java:53)
at com.google.cloud.bigquery.BigQueryImpl.getDataset (BigQueryImpl.java:227)
at com.google.cloud.bigquery.BigQueryImpl.getDataset (BigQueryImpl.java:218)
at com.example.Edmonds.myapplication.backend.MyServlet.doGet (MyServlet.java:75)
at javax.servlet.http.HttpServlet.service (HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service (HttpServlet.java:717)

我在做标准应用程序引擎教程时遇到了一个类似的例外:

第页:

    Error: Server Error
    The server encountered an error and could not complete your request.
    Please try again in 30 seconds
在服务器日志中

Error for /create
java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;
    at com.google.api.gax.retrying.BasicRetryingFuture.<init>(BasicRetryingFuture.java:77)
    at com.google.api.gax.retrying.DirectRetryingExecutor.createFuture(DirectRetryingExecutor.java:75)
    at com.google.cloud.RetryHelper.runWithRetries(RetryHelper.java:53)
    at com.google.cloud.storage.StorageImpl.create(StorageImpl.java:148)
    at com.google.cloud.storage.StorageImpl.create(StorageImpl.java:141)
    at com.example.getstarted.util.CloudStorageHelper.uploadFile(CloudStorageHelper.java:65)
    at com.example.getstarted.basicactions.CreateBookServlet.doPost(CreateBookServlet.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
    at com.example.getstarted.util.DatastoreSessionFilter.doFilter(DatastoreSessionFilter.java:98)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    at com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:125)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:37)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    at com.google.apphosting.utils.servlet.JdbcMySqlConnectionCleanupFilter.doFilter(JdbcMySqlConnectionCleanupFilter.java:60)
/create的
错误
java.lang.NoSuchMethodError:com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;
在com.google.api.gax.retrying.BasicRetryingFuture上。(BasicRetryingFuture.java:77)
在com.google.api.gax.retrying.DirectRetryingExecutor.createFuture(DirectRetryingExecutor.java:75)
位于com.google.cloud.RetryHelper.runWithRetries(RetryHelper.java:53)
位于com.google.cloud.storage.StorageImpl.create(StorageImpl.java:148)
位于com.google.cloud.storage.StorageImpl.create(StorageImpl.java:141)
位于com.example.getstarted.util.CloudStorageHelper.uploadFile(CloudStorageHelper.java:65)
位于com.example.getstarted.basicactions.CreateBookServlet.doPost(CreateBookServlet.java:70)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
位于org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
位于com.example.getstarted.util.DatastoreSessionFilter.doFilter(DatastoreSessionFilter.java:98)
位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
在com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:125)上
位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
位于com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:37)
位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
位于com.google.apphosting.utils.servlet.JdbcMySqlConnectionCleanupFilter.doFilter(JdbcMySqlConnectionCleanupFilter.java:60)
上传图像时,它在本地运行时运行良好,但升级到appspot时出现故障

但是,在用户身份验证部分之后,一旦我登录,就没有收到错误。如果是匿名的,我得到了那个错误。它可能在最近的补丁中被破坏。因为我不认为他们会发布核心教程而不提及它

教程链接为:


也许这有帮助。如果你再发现,让我知道

您应该检查应用程序的类路径。最有可能的情况是,您的CP上有一个旧版本的Guava

您是否尝试过Java 8 runtime for App Engine?或者这是Java7?我相信AppEngine的Java 7版本可能与一些Google云客户端库不兼容,因此如果Java 7是一项要求,您可能必须使用Google API client libraries@TimSwast,您如何告诉Google云客户端库哪个Java版本兼容?您如何在本地运行该项目?
Error for /create
java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;
    at com.google.api.gax.retrying.BasicRetryingFuture.<init>(BasicRetryingFuture.java:77)
    at com.google.api.gax.retrying.DirectRetryingExecutor.createFuture(DirectRetryingExecutor.java:75)
    at com.google.cloud.RetryHelper.runWithRetries(RetryHelper.java:53)
    at com.google.cloud.storage.StorageImpl.create(StorageImpl.java:148)
    at com.google.cloud.storage.StorageImpl.create(StorageImpl.java:141)
    at com.example.getstarted.util.CloudStorageHelper.uploadFile(CloudStorageHelper.java:65)
    at com.example.getstarted.basicactions.CreateBookServlet.doPost(CreateBookServlet.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
    at com.example.getstarted.util.DatastoreSessionFilter.doFilter(DatastoreSessionFilter.java:98)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    at com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:125)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:37)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    at com.google.apphosting.utils.servlet.JdbcMySqlConnectionCleanupFilter.doFilter(JdbcMySqlConnectionCleanupFilter.java:60)