【发布时间】:2012-02-22 16:21:56
【问题描述】:
我需要将多个 jar 的内容重新打包到一个 jar 文件中,因此我使用Maven assembly plugin 将 jar 解压到程序集目录。这是通过一个非常标准的程序集描述符完成的:
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
<id>assembly</id>
<formats>
<format>dir</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<outputDirectory>lib</outputDirectory>
<unpack>true</unpack>
<unpackOptions>
<excludes>
<exclude>**/dll/**</exclude>
<exclude>**/dylib/**</exclude>
<exclude>**/so/**</exclude>
</excludes>
</unpackOptions>
<scope>runtime</scope>
<useTransitiveDependencies>false</useTransitiveDependencies>
<includes>
<include>com.corp*:*</include>
</includes>
<excludes>
<exclude>com.corp*:*-xb-*</exclude>
<exclude>com.corp*:juniper</exclude>
</excludes>
</dependencySet>
</dependencySets>
<files>
<file>
<source>about.txt</source>
<outputDirectory>/lib</outputDirectory>
<filtered>true</filtered>
</file>
</files>
</assembly>
问题是,我如何将整个东西打包到一个 jar 中?我需要创建一个新的 POM 来重新打包程序集的输出吗?
谢谢
【问题讨论】:
-
发现我可以使用 maven-jar-plugin。但还是不太了解。
标签: maven maven-assembly-plugin