我有一个局域网,其中每台开发人员机器都安装了Maven,当然每个开发人员机器都有自己的存储库,通过settings.xml
文件通过<localRepository>
部分定义,例如:
usernamemavenrepository
(自定义(
它如何一种通用的方式,无论操作系统是Linux,Mac还是Windows
。目标是在 LAN 中只有一台机器,以便为同一 LAN 中的其他机器访问自己的存储库,当然,这当然是让它们根据需要或通过他们的项目请求引用依赖项。因此如下:
* Developer Master [central repository in the LAN]
* Developer Alpha
* Developer Beta
* Developer Delta
因此,Alpha,Beta,Delta是依赖的开发人员机器 - 因为现在称为DDM。这些 DDM 应该可以访问 Master 可用的依赖项,重要的是不要从主节点下载或复制这些 jar 依赖项给自己 - 只需引用它们;因此,目的是在这些DDM中节省有关硬盘的空间。如果在这些DDM的某个项目中通过pom声明了新的依赖项.xml则应将文件下载到master中,并且所有其他DDM也可以访问。
我对此进行了研究,我发现了一些即将通过共享远程目录工作的东西,但根据答案和评论,同步并不安全。他们中的许多人推荐了Nexus和Artifactory。
我安装了
- JFrog Artifactory Opensource 7.4.3
我需要通过步骤说明管理这些场景(当然,如果可能的话(:
问题1:在大师中
- 如何配置
Artifactory
以根据settings.xml
的<localRepository>
值重用Maven的存储库?
因此,这些 DDM 通过Artifactory
而不是直接通过共享远程目录访问该<localRepository>
位置,在共享远程目录中,随时都可能出现有关同步的问题。
问题 2:在每个 DDM 中
- 如何配置每个 Maven 的
settings.xml
文件以引用远程Artifactory
?
因此,它的目的是避免为DDM中的每个项目配置每个pom.xml
文件。这将是冗长的。
我确实在YouTube和官方JFrog文档中做了研究,但没有运气。
目标:在主机器中拥有Maven存储库目录,其中包含有关Spring,JUnit 5,Hibernate和其他依赖项的依赖项,它们应该可用于所有DDMArtifactory
不可能。
每个用户都需要自己单独的本地存储库。
让 Artifactory 从那里绘制工件很有用,但最终需要在使用前复制到开发人员的本地存储库。