有没有办法避免开发人员下载所有依赖项并将这些依赖项放在共享位置上,以便所有开发人员和每个开发项目的开发人员都指向该位置?
任何人都可以解释一下示例文件和示例吗?
答案 0 :(得分:10)
最好是与maven的一个存储库管理器一起使用。设置的主要步骤是: - 在内部计算机上安装中央存储库 - 配置中央存储库以代理开发人员所需的存储库 - 修改开发人员maven设置以使用内部maven存储库作为所有内容的镜像(有关详细信息,请参阅here)
有3个着名的存储库管理器可用:
我最喜欢Artifactory - 安装和配置花了不到一个小时。现在,如果开发人员向maven项目添加新的依赖项,则该工件将从原始远程存储库下载到内部存储库并将可用。当下一个开发人员需要存档时,它将从内部存储库下载 - 访问速度会快得多。
答案 1 :(得分:2)
您可以像这样更改本地存储库:
The location of your local repository can be changed in your user configuration. The default value is ${user.home}/.m2/repository/.
<settings>
...
<localRepository>/path/to/local/repo/</localRepository>
...
</settings>
我认为如果您创建共享文件夹并且所有其他开发人员都写入此文件夹的路径,这可以提供帮助。(但我没试过这个)
<强>更新强>
使用共享仓库是个坏主意。在两个或多个用户之间共享本地存储库不是线程安全的,可能会导致不同的错误 因此,这里提到的许多人使用Artifactory
答案 2 :(得分:1)
我认为您正在寻找http://www.jfrog.com/home/v_artifactory_opensource_overview
Artifactory具有良好的用户指南,易于理解。我没有多少经验,但它真的很强大。
答案 3 :(得分:0)
我明白你想要什么,但我相信你这不是一个好主意。因为一旦2个开发人员立即开始在同一个项目上工作,就会发生后来的混乱
答案 4 :(得分:0)
Maven正在解析和更新依赖项。你总是在某处拥有你的repo的本地实例。您可以在.m2文件夹的settings.xml中配置本地存储库和其他配置文件。
例如,本地仓库看起来像
<localRepository>C:/dev/.m2/repository</localRepository>
它可能还解析了共享文件系统。 您还可以在文件共享上为自己的maven工件添加内部存储库
<repository>
<id>internal.releases.upload</id>
<name>Internal repo</name>
<url>file:////data/repo</url>
</repository>
例如,。在此处了解有关存储库的更多信息http://maven.apache.org/guides/introduction/introduction-to-repositories.html