在 NetBeans 中打包 Maven 项目的两种方式
一�、生成主 jar 和依赖 lib 文件夹
这种方式构建出来的 jar 包只包含你自己写的代码,而第三方依赖 jar 包都包含在 lib 文件夹里面,运行时需要把 .jar 包和 lib 文件夹放在同级目录运行。
在你项目的 pom.xml
文件中的 project
->build
->plugins
节点下面添加以下代码 ( mainClass
标签中的内容改成你的项目启动类) :
<!-- 打包第一种方式, 生成主jar和依赖lib文件夹 -->
<!-- 设置程序主类和依赖文件夹 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.wskfz.xmlrpctool.MainJFrame</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<!-- 拷贝依赖的jar包到lib文件夹 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>copy</id>
<phase>install</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>
${project.build.directory}/lib
</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
二�、把所有依赖和主程序打成一个jar包
这种方式构建出来的 jar 包, 你自己写的代码和第三方依赖都在里面, 可以独立运行.
<!-- 打包第二种方式, 把所有依赖和主程序打成一个jar包 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.3</version>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>com.wskfz.xmlrpctool.MainJFrame</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>assembly</goal>
</goals>
</execution>
</executions>
</plugin>
根据实际情况选择一种合适的方式, 修改保存后, 在 NetBeans 中你的项目上右键 清除并构建
即可打包. 完成后在你项目文件夹的 target
文件夹下面即可看到你打出来的 jar 包.