maven 打包可执行jar的两种方法

Posted jimson

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了maven 打包可执行jar的两种方法相关的知识,希望对你有一定的参考价值。

1.修改pom.xml增加如下内容

<build>
    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifest>
                            <mainClass>com.jimson.hellojava.main</mainClass>
                            <addClasspath>true</addClasspath>
                            <classpathPrefix>lib/</classpathPrefix>
                        </manifest>
                    </archive>
                    <classesDirectory>
                    </classesDirectory>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>
</build>

运行mvn clean package即可;

2.  maven中把依赖的JAR包一起打包

<build>
        <plugins>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifest>
                            <mainClass>com.jimson.hellojava.main</mainClass>
                        </manifest>
                    </archive>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                </configuration>
            </plugin>
        </plugins>
    </build>

要将依赖包一起打包的话,需要使用maven-assembly-plugin插件。需要注意的是,使用此插件进行打包时,不再是使用mvn package 命令,而是使用 mvn assembly:assembly命令。

执行成功后会在target文件夹下多出一个以-jar-with-dependencies结尾的jar包。这个jar包中就包含了当前项目的所有依赖包,可以独立执行。

 

以上是关于maven 打包可执行jar的两种方法的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot打包的两种方式 - jar方式 和 war 方式

Maven项目依赖外部jar进行打包的两种方式

求Java程序打包成可执行jar的工具或者方法

eclipse中将项目打包成jar的两种方法,及其问题与解决方法

maven工程编译并生成可执行JAR包命令

maven项目打包插件:将maven项目打包成一个可执行的jar(瘦jar)