【发布时间】:2010-11-05 13:52:34
【问题描述】:
我有兴趣为我的组织维护一个 Maven2 存储库。有哪些有用的提示和陷阱。
在发布代码时,用户在设置从存储库下载或发布自己的工件到存储库的标准时应遵循哪些准则?你对这类事情有什么样的治理/规则?您在开发者指南/文档中包含了哪些相关内容?
更新:我们已经建立了 Nexus,并且对此非常满意 - 遵循了 Sal 的大部分指导方针,没有遇到任何问题。此外,我们通过 Hudson CI 服务器限制了部署访问和自动构建/部署快照工件。 Hudson 可以分析所有上游/下游项目的依赖关系,因此如果编译问题、测试失败或其他一些违规行为导致构建中断,则不会发生部署。不要在 Maven2/Maven3 中进行快照部署,因为元数据在两个版本之间发生了变化。 “仅 Hudson”快照部署策略将缓解这种情况。我们不使用发布插件,但在将快照移动到发布时围绕Versions plugin 编写了一些管道。我们还使用 m2eclipse,它似乎与 Nexus 配合得很好,因为从设置文件中它可以看到 Nexus 并且知道从那里索引工件信息以进行查找。 (尽管我不得不调整其中一些设置以使其完全索引我们的内部快照。)如果您有兴趣这样做,我还建议您将带有工件的源 jar 部署为标准做法。我们在超级 POM 中进行配置。
UPDATE2:我遇到过this Sonatype whitepaper,它详细说明了采用/成熟度的不同阶段,每个阶段对于 Maven 存储库管理器都有不同的使用目标。
【问题讨论】:
标签: java maven-2 repository maintenance