我对Ivy很新,但似乎功能强大且易于使用。
现在,我正在阅读有关常春藤的最佳做法,他们提到:
为所有模块添加模块描述符在Ivy world,module中 描述符是常春藤文件,基本上是简单的xml文件 描述模块作为工件及其产生的内容 的依赖关系。
为所有人编写或下载模块描述符是一种很好的做法 您的开发涉及的模块,甚至是您的第三方 依赖关系,即使它们不提供这样的模块描述符 自己。
首先,它似乎是额外的工作,需要时间。但是当你 有几个模块使用相同的第三方库,那么你会 只需要在你的常春藤文件中添加一行即可获得这个库 你真正需要它自己的依赖(如果你有好的模块 存储库中的描述符,尤其是使用模块时的描述符 配置)。当您想要升级时,它也将非常有用 依赖。您的模块常春藤文件中的一个单一更改,您将 获取更新版本及其更新(或不更新)依赖项。
因此,我们建议为您的所有模块添加常春藤文件 库。您甚至可以通过设置描述符来强制执行此规则 解析器所需的属性。因此你不应该这样做 使用依赖项工件包含/排除/规范功能 常春藤,只应在非常特殊的情况下使用。
我对以下声明特别感兴趣:
当您想升级时,它也会非常有用 依赖。您的模块常春藤文件中的一个单一更改,您将 获取更新版本及其更新(或不更新)依赖项。
我从上面的陈述中得出,我们可以指定一种配置,然后让所有项目依赖于该cofig。如果我们决定升级并使用更新的版本,我们只需更改该配置上的一行,而不是每个项目都使用这样的库并单独更改依赖项。
我的理解是否正确?如果是这样,我们如何使用常春藤实现这一目标?