部署时延迟任务中的ClassNotFoundException

时间:2018-01-04 16:39:13

标签: java google-app-engine

我使用Gradle构建了一个app引擎应用; Gradle管理所有依赖项。

该应用程序接受一些参数作为POST的一部分,然后创建一个延迟任务以写入Google表格。

当我使用appengineRun时,该应用运行良好。

当我使用appengineDeploy并尝试运行已部署的应用程序时,延迟任务将失败并显示:

javax.servlet.ServletContext log: _ah_queue_deferred: Deferred task failed exception: com.google.apphosting.utils.servlet.DeferredTaskServlet$DeferredTaskException: java.lang.ClassNotFoundException: org.eclipse.jetty.util.MultiMap$1

我的所有代码都没有使用org.eclipse.jetty.util.MultiMapgradle dependencies没有提及任何Jetty依赖项。

是否可以获得完整的堆栈跟踪以查看正在加载此类的内容?

什么可以加载这个类,我如何以可维护的方式解决这个问题(即使用Gradle来正确管理依赖关系)?

1 个答案:

答案 0 :(得分:0)

这不是一个真正的答案,但解决方法是将jetty-util添加到build.gradle

compile 'org.eclipse.jetty:jetty-util:9.4.8.v20171121'