使用Maven運行Java main的3種方式使用Maven運行Java main的3種方式


maven使用exec插件運行java main方法,以下是3種不同的操作方式。

一、從命令行運行

1、運行前先編譯代碼,exec:java不會自動編譯代碼,你需要手動執行mvn compile來完成編譯。

[plain]  view plain  copy
 
 
 
  在CODE上查看代碼片派生到我的代碼片
  1. mvn compile  

2、編譯完成后,執行exec運行main方法。

不需要傳遞參數:

[plain]  view plain  copy
 
 
 
  在CODE上查看代碼片派生到我的代碼片
  1. mvn exec:java -Dexec.mainClass="com.vineetmanohar.module.Main"  

需要傳遞參數:

[plain]  view plain  copy
 
 
 
  在CODE上查看代碼片派生到我的代碼片
  1. mvn exec:java -Dexec.mainClass="com.vineetmanohar.module.Main" -Dexec.args="arg0 arg1 arg2"  

指定對classpath的運行時依賴:

[plain]  view plain  copy
 
 
 
  在CODE上查看代碼片派生到我的代碼片
  1. mvn exec:java -Dexec.mainClass="com.vineetmanohar.module.Main" -Dexec.classpathScope=runtime  

二、在pom.xml中指定某個階段執行

[html]  view plain  copy
 
 
 
  在CODE上查看代碼片派生到我的代碼片
  1. <build>  
  2.  <plugins>  
  3.   <plugin>  
  4.    <groupId>org.codehaus.mojo</groupId>  
  5.    <artifactId>exec-maven-plugin</artifactId>  
  6.    <version>1.1.1</version>  
  7.    <executions>  
  8.     <execution>  
  9.      <phase>test</phase>  
  10.      <goals>  
  11.       <goal>java</goal>  
  12.      </goals>  
  13.      <configuration>  
  14.       <mainClass>com.vineetmanohar.module.CodeGenerator</mainClass>  
  15.       <arguments>  
  16.        <argument>arg0</argument>  
  17.        <argument>arg1</argument>  
  18.       </arguments>  
  19.      </configuration>  
  20.     </execution>  
  21.    </executions>  
  22.   </plugin>  
  23.  </plugins>  
  24. </build>  

將CodeGenerator.main()方法的執行綁定到maven的 test 階段,通過下面的命令可以執行main方法:

[plain]  view plain  copy
 
 
 
  在CODE上查看代碼片派生到我的代碼片
  1. mvn test  

三、在pom.xml中指定某個配置來執行

[html]  view plain  copy
 
 
 
  在CODE上查看代碼片派生到我的代碼片
  1. <profiles>  
  2.  <profile>  
  3.   <id>code-generator</id>  
  4.   <build>  
  5.    <plugins>  
  6.     <plugin>  
  7.      <groupId>org.codehaus.mojo</groupId>  
  8.      <artifactId>exec-maven-plugin</artifactId>  
  9.      <version>1.1.1</version>  
  10.      <executions>  
  11.       <execution>  
  12.        <phase>test</phase>  
  13.        <goals>  
  14.         <goal>java</goal>  
  15.        </goals>  
  16.        <configuration>  
  17.         <mainClass>com.vineetmanohar.module.CodeGenerator</mainClass>  
  18.         <arguments>  
  19.          <argument>arg0</argument>  
  20.          <argument>arg1</argument>  
  21.         </arguments>  
  22.        </configuration>  
  23.       </execution>  
  24.      </executions>  
  25.     </plugin>  
  26.    </plugins>  
  27.   </build>  
  28.  </profile>  
  29. </profiles>  

將2中的配置用<profile>標簽包裹后就能通過指定該配置文件來執行main方法,如下:

[plain]  view plain  copy
 
 
 
  在CODE上查看代碼片派生到我的代碼片
  1. mvn test -Pcode-generator  


注:通過以下命令可以獲取mvn exec的其他配置參數說明。

[plain]  view plain  copy
 
 
 
  在CODE上查看代碼片派生到我的代碼片
  1. mvn exec:help -Ddetail=true -Dgoal=java  

 

英文地址:http://www.vineetmanohar.com/2009/11/3-ways-to-run-java-main-from-maven/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM