通过maven可以把依赖的各种jar和自己的程序都打包成一个jar,这样在部署的时候就非常方便了,这点在做可执行的jar包时就更方便了。
这依赖一个maven的插件:shade
在pom里配置shade插件即可:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.1.1</version> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>cn.devmgr.spider.Application</mainClass> </transformer> </transformers> </configuration> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
|
使用 mvn package
打包时,就可以把所有依赖的jar都打包到一个jar里了。要运行只需要 java -jar xxx.jar
不用在classpath参数里写一大堆jar了,是不是很方便?
shade插件还可以配置排除/包含某些jar包。