使用Maven运行Java ain的方法(转)

Posted Jim

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Maven运行Java ain的方法(转)相关的知识,希望对你有一定的参考价值。

使用Maven运行Java Main的方法(既Java Application项目),可以有如下方式解决:

1、将Maven项目导入到eclipse中,然后直接项目右键【Run As】->【Java Application】。

2、直接指定jar包的Main入口(参考:http://www.cnblogs.com/EasonJim/p/6481704.html),通过Maven命令打包出jar文件,然后运行java -jar Application.jar。

3、通过Maven插件exec-maven-plugin实现命令行下直接运行。官网:http://www.mojohaus.org/exec-maven-plugin/

exec-maven-plugin使用方法如下(以下内容转自:http://blog.csdn.net/qbg19881206/article/details/19850857):

一、从命令行运行

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

mvn compile 

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

①不需要传递参数:

mvn exec:java -Dexec.mainClass="com.jsoft.test.MainClass" 

②需要传递参数:

mvn exec:java -Dexec.mainClass="com.jsoft.test.MainClass" -Dexec.args="arg0 arg1 arg2" 

③指定对classpath的运行时依赖:

mvn exec:java -Dexec.mainClass="com.jsoft.test.MainClass" -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.jsoft.test.MainClass</mainClass>  
      <arguments>  
       <argument>arg0</argument>  
       <argument>arg1</argument>  
      </arguments>  
     </configuration>  
    </execution>  
   </executions>  
  </plugin>  
 </plugins>  
</build>  

提示:这种方式使用了插件的方式去配置生命周期触发指定的插件运行特定的任务。以上配置可以看出<phase>指定了Maven的生命周期阶段,而<goal>制定了exec插件的目标为java。

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

mvn test 

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

<profiles>  
 <profile>  
  <id>code-mainclass</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.jsoft.test.MainClass</mainClass>  
        <arguments>  
         <argument>arg0</argument>  
         <argument>arg1</argument>  
        </arguments>  
       </configuration>  
      </execution>  
     </executions>  
    </plugin>  
   </plugins>  
  </build>  
 </profile>  
</profiles>  

提示:这种方式使用了构建配置文件,其中<id>为配置文件触发的标志参数,<phase>指定了Maven的生命周期阶段,而<goal>制定了exec插件的目标为java。

通过指定该配置文件来执行main方法,如下:

mvn test -Pcode-mainclass

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

mvn exec:help -Ddetail=true -Dgoal=java

以上是关于使用Maven运行Java ain的方法(转)的主要内容,如果未能解决你的问题,请参考以下文章

maven web项目如何用jetty运行

myeclipse 怎么把maven项目转成web项目

Maven生成可以直接运行的jar包的多种方式(转)

使用IDEA运行普通的main方法

使用Maven运行Java main的3种方式

JAVA中汉字转拼音的方法