尝试修改现有的 Java/Tomcat 应用程序以按照其部署在 Heroku 上tutorial https://devcenter.heroku.com/articles/create-a-java-web-application-using-embedded-tomcat并遇到 AppAssembler 找不到入口类的一些问题。运行 target/bin/webapp (或部署到 Heroku)会导致Error: Could not find or load main class org.stopbadware.dsp.Main
执行中java -cp target/classes:target/dependency/* org.stopbadware.dsp.Main
不过运行正常。这是 pom.xml 的相关部分:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>appassembler-maven-plugin</artifactId>
<version>1.1.1</version>
<configuration>
<assembleDirectory>target</assembleDirectory>
<programs>
<program>
<mainClass>org.stopbadware.dsp.Main</mainClass>
<name>webapp</name>
</program>
</programs>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>assemble</goal>
</goals>
</execution>
</executions>
</plugin>
我的猜测是mvn package
导致 AppAssembler 不使用正确的类路径,有什么建议吗?
您的工件的包装必须设置为jar
,否则找不到主类。
<pom>
...
<packaging>jar</packaging>
...
</pom>
该工件本身被添加到类路径的末尾,因此除了 JAR 文件之外,任何其他文件都不会产生任何效果。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)