首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将java web应用程序部署到heroku:由NoClassDefFoundError引发的ClassNotFoundException

将java web应用程序部署到heroku:由NoClassDefFoundError引发的ClassNotFoundException
EN

Stack Overflow用户
提问于 2020-03-28 17:50:22
回答 1查看 814关注 0票数 3

我遵循了这条指令:

https://devcenter.heroku.com/articles/deploying-java

将java web应用程序部署到heroku。

我的Procfile的内容如下:

代码语言:javascript
复制
web: java $JAVA_OPTS -cp target/classes:target/dependency/* com.michael.optimizer.Optimizer

(Optimizer是我的主类的名称。)

执行命令

代码语言:javascript
复制
mvn clean install 

成功地构建项目。

但随后执行命令

代码语言:javascript
复制
heroku local web

结果将出现以下错误消息:

代码语言:javascript
复制
Exception in thread "main" 
5:33:48 PM web.1 |  java.lang.NoClassDefFoundError: javax/json/Json
5:33:48 PM web.1 |  at com.michael.optimizer.api.JsonRequest.doJsonRequest(JsonRequest.java:29)
5:33:48 PM web.1 |      at         com.michael.optimizer.api.StationApi.doJsonRequest(StationApi.java:150)
5:33:48 PM web.1 |      at     com.michael.optimizer.api.StationApi.areaSearch(StationApi.java:73)
5:33:48 PM web.1 |      at com.michael.optimizer.Optimizer.main(Optimizer.java:23)
5:33:48 PM web.1 |  Caused by: java.lang.ClassNotFoundException: javax.json.Json
5:33:48 PM web.1 |      at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
5:33:48 PM web.1 |      at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
5:33:48 PM web.1 |      at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
5:33:48 PM web.1 |      at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
5:33:48 PM web.1 |      ... 4 more

我不明白的是:当我在本地运行这个应用程序时,一切都很好。(这一点也不奇怪,因为在文件夹~/.m2/repository/javax/javaee-web-api/7.0/javaee-web-api-7.0.jar中,json包应该在其中。)

只有当我尝试部署到heroku时,显然找不到类javax.json.Json。

怎么了?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-23 06:01:41

你可能想使用复制依赖关系

代码语言:javascript
复制
mvn install dependency:copy-dependencies 

此复制target/dependencies.中的所有依赖项

如果要排除测试范围依赖项,

代码语言:javascript
复制
mvn install dependency:copy-dependencies -DexcludeScope=test
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60904635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档