一、只打可执行jar包
1) 配置pom.xml文件:
pom.xml增加如下代码:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>org.mybatis.generator.api.ShellRunner</mainClass>
</manifest>
</archive>
<includes>
<include>**/org/**</include>
</includes>
</configuration>
</plugin>
其中,<addClasspath>表示是否需要在产生的jar包中MANIFEST.MF文件中加入依赖的jar包路径。
<
classpathPrefix
>表示依赖的jar包路径连接。如上方为“lib/“,则打包和文件中展示如下图:
<mainClass>表示可执行jar包运行的主类。
<includes>配置的是需要打包的数据。
<
excludes>配置的是需要打包过滤掉的数据。
2)配置完成后,执行打包命令进行打包:
mvn
clean package
也可以进行如下配置,进行运行:
在项目名上右键,依次点击 Run As -> Maven build... 如下图:
弹出如下界面:
在图中Name处填上一个自己记得住的名字,如 “
mybatis-generator_package
”,并在Goals中填入如下内容:“
clean package
”然后点击“Apply”按钮。
3)运行:
点击“Run As...”按钮,然后点击刚才配置好的Maven Build程序,如下图:
程序运行完成如果成功,会出现如下内容“BUILD SUCCESS”,如下图:
打包好的jar文件存在于项目目录下的target目录下:
如果需要修改jar包命名,可以修改pom.xml中的参数:
<artifactId>和<version>决定了项目打包后的jar包名称。
二、将依赖的jar包一起打包
1)增加pom.xml配置文件内容,引入maven-dependency-plugin插件:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.10</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>
参数解释:
<outputDirectory>配置的为依赖jar包输出路径,“${project.build.directory}/lib” 表示输出到target目录下的lib目录中。
2)运行同打jar命令一样的程序即可打出jar包及依赖的jar到lib目录下。
常见错误:
1.由于使用的命令式“mvn clean package“,如果打开了产生jar包的target目录,再次运行打包程序时会出现如下错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project mybatis-generator: Failed to clean project: Failed to delete D:\git\mybatis-generator\target -> [Help 1]
解决方案:
关闭打开的target目录。
参考资料: