我们使用Gradle构建Java项目,目前我们有Ivy存储库来存储第三方工件,并将我们自己的工件发布到(repo是使用Gant脚本和Ivy ANT任务构建的)。回购管理是基本的。
Gradle也可以使用maven repo,因此切换到像Archiva或Nexus这样的Maven工件管理器是一种选择,但也许是不必要的。你知道任何工具或最佳实践可以帮助我们建立和维护常春藤回购吗?
要明确一点:我们已经阅读了教程以及更多内容,并了解如何操作,但它仍然是基本的维护。
答案 0 :(得分:6)
在过去,我只使用常春藤存储库来使用简单的低级协议(如FTP站点)发布工件的小型私有存储库。 (所有站点需要的是版本化目录布局和描述工件的 ivy.xml 文件)
基于maven的存储库基础架构现在非常普遍,有许多项目使用它,推广替代存储库管理标准几乎没有意义。
Sonatype(Maven背后的公司)使他们的存储库产品Nexus可供所有人使用,因为保持Maven central的带宽要求受到控制符合每个人的利益。
值得庆幸的是,常春藤对Maven很有好处,这意味着你可以充分利用两全其美的优势。
答案 1 :(得分:1)
我创建了一篇关于my Ivy repository layout and choices的博客文章。您可能有不同的要求,但我认为检查其他解决方案以获得一些想法总是好的...
答案 2 :(得分:1)
有一个名为Ivy Roundup的社区项目,旨在建立一致的,最新的常见第三方图书馆常春藤回购。匹配那里使用的命名约定可能是一个好主意,甚至更好,只需使用<ivy:install>
task从那里获取模块。
答案 3 :(得分:0)
在我看来,Ivy的存储库中没有太多工作,因为它只是工作。您可以直接从文件系统中执行Ivy的Ant任务,这很简单。
不可否认,改变人工制品名称可能很困难,但不管怎样,这是你不应该做的事情。
答案 4 :(得分:0)
当我需要第三方库时,我通常在实践中做的是在MVN repository中搜索它,然后单击“常春藤”选项卡以获取ivy.xml的Ivy依赖项。