maven使用exec插件运行java main方法

本文介绍了如何使用Maven的exec插件来运行Java项目的main方法,并提供了三种操作方式:命令行运行、在pom.xml中指定某个阶段执行以及通过配置文件执行。

maven使用exec插件运行java main方法

以下是3种不同的操作方式。

从命令行运行


1、运行前先编译代码,exec:java不会自动编译代码,你需要手动执行mvn compile来完成编译。


mvn compile

2、编译完成后,执行exec运行main方法。

不需要传递参数:


mvn exec:java -Dexec.mainClass="com.vineetmanohar.module.Main"

需要传递参数:


mvn exec:java -Dexec.mainClass="com.vineetmanohar.module.Main" -Dexec.args="arg0 arg1 arg2" 

指定对classpath的运行时依赖:


mvn exec:java -Dexec.mainClass="com.vineetmanohar.module.Main" -Dexec.classpathScope=runtime

在pom.xml中指定某个阶段执行



<build>

 <plugins>

  <plugin>

   <groupId>org.codehaus.mojo</groupId>

   <artifactId>exec-maven-plugin</artifactId>

   <version>1.1.1</version>

   <executions>

    <execution>

     <phase>test</phase>

     <goals>

      <goal>java</goal>

     </goals>

     <configuration>

      <mainClass>com.vineetmanohar.module.CodeGenerator</mainClass>

      <arguments>

       <argument>arg0</argument>

       <argument>arg1</argument>

      </arguments>

     </configuration>

    </execution>

   </executions>

  </plugin>

 </plugins>

</build>

将CodeGenerator.main()方法的执行绑定到maven的 test 阶段,通过下面的命令可以执行main方法:


mvn test

在pom.xml中指定某个配置来执行



<profiles>

 <profile>

  <id>code-generator</id>

  <build>

   <plugins>

    <plugin>

     <groupId>org.codehaus.mojo</groupId>

     <artifactId>exec-maven-plugin</artifactId>

     <version>1.1.1</version>

     <executions>

      <execution>

       <phase>test</phase>

       <goals>

        <goal>java</goal>

       </goals>

       <configuration>

        <mainClass>com.vineetmanohar.module.CodeGenerator</mainClass>

        <arguments>

         <argument>arg0</argument>

         <argument>arg1</argument>

        </arguments>

       </configuration>

      </execution>

     </executions>

    </plugin>

   </plugins>

  </build>

 </profile>

</profiles>

将2中的配置用<profile>标签包裹后就能通过指定该配置文件来执行main方法,如下:


mvn test -Pcode-generator

注:通过以下命令可以获取mvn exec的其他配置参数说明。


mvn exec:help -Ddetail=true -Dgoal=java
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值