Maven AppAssembler 找不到类

2024-04-21

尝试修改现有的 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(使用前将#替换为@)

Maven AppAssembler 找不到类 的相关文章

随机推荐