Maven打包可执行jar,包含依赖jar包

maven里,很多插件可以实现我们所需要的一些功能,今天说一下Maven打包可执行jar,包含依赖jar包。这样的插件用的还比较多点,比如jstorm,Apache Ignite(1.3.0-incubating版本的分布式类加载系统还不完善,手动把依赖的jar包打包拷贝到lib目录)。


Maven打包可执行jar,包含依赖jar包的插件很多,其中,感觉maven-shade-plugin配置最简洁,功能也比较好。(maven-assembly-plugin也可以,不过特别之处有问题)。

简单的配置如下:

 <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>2.4.1</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                        <configuration>
                            <transformers>
                                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                    <mainClass>com.doctor.weixin.MainEntrance</mainClass>
                                </transformer>
                            </transformers>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

其中,项目pom配置依赖了:

  <dependency>
            <groupId>me.chanjar</groupId>
            <artifactId>weixin-java-cp</artifactId>
            <version>1.3.0</version>
        </dependency>

执行命令:

 mvn clean package


看下打包的jar文件:

Maven打包可执行jar,包含依赖jar包_第1张图片

依赖的包已经出现在jar里面。


你可能感兴趣的:(Maven打包可执行jar,包含依赖jar包)