maven插件生成可执行jar包

maven有两种生成可执行jar包的插件,能够自动加载依赖包。分别为 maven-assembly-plugin 和appassembler-maven-plugin, appassembler-maven-plugin 的优势是能够自动生成window和linux的启动脚本, maven-assembly-plugin 生成jar包后需要执行 java -jar **.jar命令运行jar包。

         以上两种插件分别需要在pom文件中添加以下插件plugin:

maven-assembly-plugin使用方式如下

 

Xml代码   收藏代码
  1. <plugin>  
  2.     <artifactId>maven-assembly-plugin</artifactId>  
  3.     <configuration>  
  4.     <appendAssemblyId>false</appendAssemblyId>  
  5.     <descriptorRefs>  
  6.         <descriptorRef>jar-with-dependencies</descriptorRef>  
  7.     </descriptorRefs>  
  8.     <archive>  
  9.         <manifest>  
  10.         <mainClass>*.account.core.GenerateAccount</mainClass>  
  11.         </manifest>  
  12.     </archive>  
  13.     </configuration>  
  14.     <executions>  
  15.     <execution>  
  16.         <id>make-assembly</id>  
  17.         <phase>package</phase>  
  18.         <goals>  
  19.         <goal>assembly</goal>  
  20.         </goals>  
  21.     </execution>  
  22.     </executions>  
  23. </plugin>  

 

执行命令:mvn assembly:assembly 

工程target目录下会自动生成的jar包,依赖包也包含在jar包里,然后手动执行java -jar  *.jar即可执行。

appassembler-maven-plugin使用方式如下

 

Xml代码   收藏代码
  1. <plugin>  
  2.                    <groupId>org.codehaus.mojo</groupId>  
  3.                    <artifactId>appassembler-maven-plugin</artifactId>  
  4.                    <version>1.1.1</version>  
  5.                    <configuration>  
  6.                    <programs>  
  7.                    <program>  
  8.                    <mainClass>*.account.core.GenerateAccount</mainClass>  
  9.                    <name>ucenter</name>  
  10.                    </program>  
  11.                    </programs>  
  12.                    </configuration>  
  13. </plugin>  

 

 

 

 

执行命令:mvn package appassembler:assemble,会自动生成jar包

然后执行sh target/appassembler/bin/account 即可执行jar包,account是l生成的inux下的启动脚本

 

你可能感兴趣的:(maven插件)