Maven运行项目

有没有一个Maven“阶段”或“目标”来简单地执行一个Java类的主要方法? 我有一个项目,我想通过只是做一些像“mvn运行”手动testing。

请参阅exec maven插件 。 您可以使用以下方式运行Java类:

mvn exec:java -Dexec.mainClass="com.example.Main" [-Dexec.args="argument1"] ... 

调用可以是一个简单的mvn exec:java如果插件configuration在你的pom.xml中。 Mojohaus的插件网站有一个更详细的例子 。

 <project> <build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.2.1</version> <configuration> <mainClass>com.example.Main</mainClass> <arguments> <argument>argument1</argument> </arguments> </configuration> </plugin> </plugins> </build> </project> 

上面提到的答案是正确的,但我正在简化它像我这样的noobs。去你的项目的POM文件。 添加一个新的属性exec.mainClass ,并将其值作为包含主方法的类。 对我来说,它是在mainpkg中的DriverClass 。 根据你的项目改变它。 在这里输入图像描述

完成此操作后,导航到包含项目的pom.xml的文件夹,并在命令提示符mvn exec:java 。 这应该是主要的方法。

给Exec Maven插件一个尝试

不需要在pom.xml中添加新的插件。 只要运行这个命令

 mvn org.codehaus.mojo:exec-maven-plugin:1.5.0:java -Dexec.mainClass="com.example.Main" | grep -Ev '(^\[|Download\w+:)' 

请参阅maven exec插件以获取更多用法。

clean package exec:java -P Class_Containing_Main_Method命令也是一个选项,如果在项目中只有一个Main方法(PSVM),则使用以下Maven安装程序。

不要忘记在pom.xml<properties></properties>部分提到这个类:

 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.main.class>com.test.service.MainTester</java.main.class> </properties> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.2.1</version> <configuration> <mainClass>${java.main.class}</mainClass> </configuration> </plugin> 

STS运行configuration以及上面的Maven安装程序:

在这里输入图像描述