我需要将 Maven 构建 Java 项目发布给远程 QA 团队。为此,我想下载所有依赖项,然后发送它们,这样他们就不需要下载它们。
目前所有依赖项都定义在pom.xml
文件,我们使用mvn install
or mvn package
构建项目。一些项目成员使用 uber jar,其他人使用 jar + 依赖项来执行。
预打包依赖的 jar 文件的最简单方法是什么,这样就不需要从互联网上下载,并且不会太大地改变我们当前的构建过程?
一个可能的解决方案是清除本地存储库,告诉 Maven 下载项目的每个依赖项和插件依赖项并制作一个 ZIP。
要清除本地存储库,您只需删除该文件夹即可{user.home}/.m2/repository
。然后,您可以使用dependency:go-offline https://maven.apache.org/plugins/maven-dependency-plugin/go-offline-mojo.html goal:
解决所有项目依赖关系的目标,包括插件和报告及其依赖关系。
mvn dependency:go-offline
这将下载您的项目所依赖的所有内容,并确保在以后的构建中不会下载任何内容。
然后,您只需制作一个 ZIP{user.home}/.m2/repository
并将其发送给您的问答团队。他们需要将其解压到自己的文件夹中{user.home}/.m2/repository
能够构建该项目。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)