exec-maven-plugin 给出类未找到异常
Posted
技术标签:
【中文标题】exec-maven-plugin 给出类未找到异常【英文标题】:exec-maven-plugin is giving class not found exception 【发布时间】:2019-09-20 23:18:25 【问题描述】:我有一个 java 类 HelloWorld.java
,带有一个打印“Hello world”的 main 方法。
要通过 POM.xml 执行此类,我使用的是exec-maven-plugin
。
我在这里使用它的官方文档http://www.mojohaus.org/exec-maven-plugin/usage.html 来实现它,如下所示:
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
<executions>
<execution>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>com.demo.printTest.HelloWorld</mainClass>
<arguments>
<argument>argument1</argument>
</arguments>
<systemProperties>
<systemProperty>
<key>myproperty</key>
<value>myvalue</value>
</systemProperty>
</systemProperties>
</configuration>
</plugin>
<plugin>another plugins</plugin>
</build>
我尝试通过以下命令运行,但每个命令都失败:
-
mvn exec:java
java.lang.ClassNotFoundException: com.demo.printTest.HelloWorld
mvn exec:exec java
mvn java
我做错了吗?我已经在这里发帖Maven Run Project
【问题讨论】:
你的java文件是否位于src/main/java/com/demo/printTest/HelloWorld.java
?
【参考方案1】:
您的代码是否编译为 target/classes/ ? 如果不是,您可能错过了 Maven 编译阶段? 当您调用 mvn exec:java 时,您不会进入 mvn 生命周期,并且未编译 java 源代码,因此您的 exec 无法找到该类。
在执行之前尝试先进行 mvn 编译。
编辑: 在此处查看正确答案:How do I execute a program using Maven?
【讨论】:
问题是找不到类错误,但链接显示了如何通过配置文件运行它。以上是关于exec-maven-plugin 给出类未找到异常的主要内容,如果未能解决你的问题,请参考以下文章