我有一个代码库,我想将其作为jar分发。它还依赖于外部jar,我希望将其捆绑到最终的jar中。
我听说这可以用maven-assembly-plug-in
来完成,但是我不明白怎么做。谁能给我举几个例子。
现在,我正在使用fat jar来捆绑最终的jar。我想用maven实现同样的功能。
发布于 2013-04-26 03:16:50
您可以使用maven-shade-plugin。
在您的构建中配置shade插件之后,命令mvn package
将创建一个包含所有依赖项的单独jar。
发布于 2014-06-28 02:06:52
实际上,添加
<archive>
<manifest>
<addClasspath>true</addClasspath>
<packageName>com.some.pkg</packageName>
<mainClass>com.MainClass</mainClass>
</manifest>
</archive>
对maven-jar-plugin的声明不会将主类条目添加到清单文件中。我必须将它添加到maven-assembly-plugin中,以便在清单中获得它
发布于 2013-04-26 03:32:19
您可以使用onejar-maven-plugin进行打包。基本上,它将您的项目及其依赖项组装为一个jar,不仅包括您的项目jar文件,还包括所有外部依赖项作为"jar的jar“,例如
<build>
<plugins>
<plugin>
<groupId>com.jolira</groupId>
<artifactId>onejar-maven-plugin</artifactId>
<version>1.4.4</version>
<executions>
<execution>
<goals>
<goal>one-jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
注1:项目home page提供配置选项。
注2:由于这样或那样的原因,onejar- Maven -plugin项目没有在Maven Central发布。但是,jolira.com会跟踪原始项目,并使用groupId com.jolira
将其发布到。
https://stackoverflow.com/questions/16222748
复制相似问题