maven-assembly-plugin 将jar包中的依赖包外置
时间: 2024-12-11 22:36:10 浏览: 22
Maven Assembly Plugin是一个强大的Maven插件,它允许你在构建项目时创建定制化的档案文件,包括JAR、WAR、EAR等格式,其中的一个功能就是将原本嵌入到主JAR内的依赖库(比如lib目录下的jar)提取并打包成单独的子文件夹或者独立的jar文件。这样做的好处是可以:
1. 提高部署效率:用户不需要手动复制依赖,可以直接获取包含所有依赖的完整部署包。
2. 简化部署结构:对于大型项目,外部依赖可以让部署包更清晰,易于管理和维护。
3. 方便其他人复用:如果依赖库是公共可用的,其他人直接引用外部依赖包也更方便。
使用`maven-assembly-plugin`配置示例:
```xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.4.0</version>
<configuration>
<archive>
<manifest>
<mainClass>your.MainClass</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
```
在这个配置中,`<descriptorRef>jar-with-dependencies</descriptorRef>`会生成一个包含了所有依赖的JAR。
阅读全文