原来都是使用maven-assembly-plugin插件进行打包,但存在一个问题就是打出来的jar包包含依赖于一体,jar包体积会比较大,每次更新jar包需要传输的数据量也就很大了,具体使用方法为:https://www.cnblogs.com/nihaorz/p/6567047.html

现在又学习到一种新的打包方式,即使用maven-jar-plugin和maven-dependency-plugin插件

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>3.2.2</version>
    <configuration>
        <archive>
            <manifest>
                <addClasspath>true</addClasspath>
                <classpathPrefix>lib/</classpathPrefix>
                <mainClass>com.wangrui027.javafx.weather.WeatherApp</mainClass>
            </manifest>
        </archive>
    </configuration>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>3.2.0</version>
    <executions>
        <execution>
            <id>copy-dependencies</id>
            <phase>package</phase>
            <goals>
                <goal>copy-dependencies</goal>
            </goals>
            <configuration>
                <outputDirectory>${project.build.directory}/lib</outputDirectory>
            </configuration>
        </execution>
    </executions>
</plugin>

修改 mainClass 为包含main函数的类后,执行 mvn clean package 即可完成打包。

这种打包方式会将依赖的jar包copy到可执行jar包同级目录的lib文件夹下,使用的时候需将jar包和lib包一起拷贝

 

参考连接:http://www.blogjava.net/liuguly/archive/2017/05/03/432496.html

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-18
  • 2022-12-23
  • 2021-06-18
  • 2021-11-28
猜你喜欢
  • 2021-08-31
  • 2022-12-23
  • 2021-08-28
  • 2022-01-22
  • 2022-12-23
  • 2021-04-26
  • 2021-11-02
相关资源
相似解决方案