有没有办法避免开发人员下载所有依赖项并将这些依赖项定位到所有开发人员的共享位置,并且每个从事项目工作的开发人员都指向该位置?
任何人都可以用示例文件和示例进行解释吗?
最好是使用 maven 的存储库管理器之一。设置的主要步骤将是: - 在内部机器上安装中央存储库 - 配置中央存储库以代理开发人员所需的存储库 - 修改开发人员 maven 设置以使用内部 maven 存储库作为所有内容的镜像(请参阅在这里了解详情)
有 3 个著名的存储库管理器可用:
我最喜欢 Artifactory - 安装和配置不到一个小时。现在,如果开发人员向 maven 项目添加新的依赖项,该工件将从原始远程存储库下载到内部存储库并可用。当下一个开发人员需要存档时,将从内部存储库下载它 - 访问速度会快得多。
您可以像这样更改本地存储库:
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
我想你正在寻找http://www.jfrog.com/home/v_artifactory_opensource_overview
Artifactory 有很好的用户指南并且易于理解。我没有太多经验,但它真的很强大。
Maven 正在解决和更新依赖项。您将始终在某个地方拥有您的仓库的本地实例。您可以在 .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
我明白你想要什么,但我确定你这不是一个好主意。因为一旦 2 个开发人员同时开始在同一个项目上工作,以后的冲突就会发生