是否有可能实际构建一个包含java代码的maven项目,构建一次并且二进制文件可以共享?
问题:我尝试构建的项目大约需要 3-4 小时,并且需要高互联网带宽。我正在尝试检查在其他几台机器中重新使用这个构建项目的可能性。
我之前曾处理过涉及 makefile 的 C++ 项目,这相当简单。我是 Java/Eclipse 的新手,需要帮助来弄清楚这是否真的可能。
附:
我确实尝试过寻找现有的解决方案;他们并不直截了当,或者他们说这是不可能的。
构建一次并离线共享
在 Maven 中,您可以构建您的项目只有一次并获取一个包含所有依赖项的完整 JAR 文件。这样,您就可以将该 JAR 离线共享给其他机器。
以下是制作它的步骤。
- 首先使用以下设置更新您的 pom.xml
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>com.thanga.MyTest[REPLACE WITH YOUR MAIN CLASS]</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
- 将您的项目与目标打包
package assembly:single
如下所示
在控制台中,
mvn package assembly:single
在日食中,
- 运行这个,你可以得到两个JAR文件。其中之一
MyFullPack-0.0.1-SNAPSHOT-jar-with-dependencies.jar
有完整的
已加载依赖项。
- 您可以打开 JAR 来查看依赖项的打包情况,如下所示。
- 您可以将此 JAR 共享给离线的其他机器,无需任何更多构建
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)