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使用方式如下
<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <configuration>
	<appendAssemblyId>false</appendAssemblyId>
	<descriptorRefs>
	    <descriptorRef>jar-with-dependencies</descriptorRef>
	</descriptorRefs>
	<archive>
	    <manifest>
		<mainClass>*.account.core.GenerateAccount</mainClass>
	    </manifest>
	</archive>
    </configuration>
    <executions>
	<execution>
	    <id>make-assembly</id>
	    <phase>package</phase>
	    <goals>
		<goal>assembly</goal>
	    </goals>
	</execution>
    </executions>
</plugin>

执行命令:mvn assembly:assembly 

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

appassembler-maven-plugin使用方式如下
 <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>appassembler-maven-plugin</artifactId>
                    <version>1.1.1</version>
                    <configuration>
                    <programs>
                    <program>
                    <mainClass>*.account.core.GenerateAccount</mainClass>
                    <name>ucenter</name>
                    </program>
                    </programs>
                    </configuration>
 </plugin>
 

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

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

 

 

猜你喜欢

转载自kfyfly.iteye.com/blog/1424121