首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ivy、Maven和Archiva之间有什么相似之处、不同之处和权衡之处?

Ivy、Maven和Archiva之间有什么相似之处、不同之处和权衡之处?
EN

Stack Overflow用户
提问于 2011-05-20 21:38:45
回答 1查看 1.7K关注 0票数 4

我对Ivy、Maven和Archiva感到困惑--它们似乎都在试图解决类似的问题。

我认为我的想法是正确的,Ivy将类似~=的功能改造为Ant (即Ant + Ivy Maven)?但我不清楚Archiva向Ant + Ivy和/或Maven添加了什么(如果有的话)。我什么时候使用(比方说) Ivy,什么时候使用Archiva,什么时候组合才有意义(如果有的话)?

背景:我们需要建立某种依赖关系管理,并建立人工制品档案。我们的源代码是跨语言的(混合了C++、Java、Scala、Ruby和Python),我们的构建过程是跨平台的(Linux、Windows、OSX、Android、iOS、QNX)。我们有一个现有的基于scons的构建系统,这有点复杂。理想情况下,我们希望在其中添加依赖项管理和工件归档,而不是(比方说)批量迁移到Maven。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-20 21:55:13

最初,与Ant相比,Maven最大的优势之一是易于依赖管理,但您说得对,Ivy现在弥补了这一差距,这意味着Ant+Ivy在构建和依赖管理方面提供了一些与Maven类似的功能。

现在,两者都提供了依赖项管理,其中一个重要的区别因素是Mavens使用了“约定重于配置”。有些人更喜欢Ant,因为它对于自定义任务/构建更灵活/更强大,而有些人更喜欢maven,因为它更简洁和简单。

这将取决于构建的复杂性,如果你有基本的Java构建,那么Maven可能更适合,因为pom文件(Maven构建文件)非常简单,但如果你需要做很多定制的特定东西,你很可能最终会有Ant脚本来执行(而且,如果你已经有了一个系统,那么交换就不一定有巨大的优势)。

Archiva不同于Ant+Ivy/Maven - Archiva是一个Ivy应用程序,它提供了一个UI来轻松管理存储库中的所有JAR文件。通常,它们非常适合于您的构建团队轻松控制和监视项目中正在使用的所有JAR。您可以将Archiva与Maven结合使用来管理中央maven存储库。

同样值得注意的是,根据我的经验,除了Archiva之外,还有一些替代方案,比如Nexus和Artifactory,它们可能更适合(archiva不会是我在repo管理中的第一选择)-请查看nexus/artifactory Should we use Nexus or Artifactory for a Maven Repo?之间的差异讨论

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6072751

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档