什么是常春藤?它与蚂蚁有什么关系?

时间:2010-01-02 19:10:44

标签: java ant ivy

我在应用程序的构建项目中看到了很多常春藤文件。什么是常春藤,它与蚂蚁的关系?

4 个答案:

答案 0 :(得分:21)

Ivy是一个Ant扩展,用于在开发过程中管理外部库,为您提供了将它们添加到类路径,将它们捆绑到应用程序构建中的方法等。

与Maven的作用有些重叠,但Ivy更轻巧(并且没有那么多)。

答案 1 :(得分:7)

Ivy是一个依赖管理器 - 它管理和控制项目所依赖的JAR文件。如果您没有JAR,默认情况下它将pull them down for you(来自Maven 2存储库),这可以使项目设置更加容易。

答案 2 :(得分:6)

Ivy最初是Jayasoft.fr product,当时在BSD许可下,但Ivy的核心始终是相同的:它是依赖管理工具

Ivy与Ant的关系是它是一个Ant扩展,因为它是通过Ant,但它并不真正依赖它(超出明显的部分)。 2007年10月11日,Ivy通过孵化过程合并到Ant下的Apache项目作为子项目。

人们常常误解的是,他们将Ivy和Maven作为一个整体进行比较。然而,由于Ivy只能以敏捷的方式处理依赖关系并且通过简单的配置和通过Ant的各种构建系统等的广泛自动化支持非常擅长,而Maven本身就是一个构建系统。个人意见可能并且确实有所不同,其中哪一个做得最好,并且值得自己进行多次Stackoverflow / Google搜索。

答案 3 :(得分:3)

我认为这些是重要且有用的要点:

  • Ivy可以在没有Ant的情况下从命令行独立使用。如果您的CI环境不包含Ant,则不会阻止您使用Ivy。是的,与Ant的集成很好,到目前为止,更好地记录。可以将Ant集成文档应用于独立使用。
  • 常春藤不只是为了Java。我的团队成功地使用它来定义一个相当大的.NET项目的依赖项(10个相互依赖的包,其中每个包含多个版本,每个版本都有多个第三方上游依赖项)。效果很好。我希望文档更清晰,更全面。
  • Ivy为Build Time提供额外的额外津贴:上游和下游构建触发。