常春藤中的配置映射是什么?

时间:2009-10-16 15:42:15

标签: ivy

我有这样的东西:

<configurations defaultconfmapping="build->default;compile->compile(*),master(*);test,runtime->runtime(*),master(*); statistic->stistic(*)">

在我的ivy.xml中,我不理解'配置映射'的概念

谁被映射到什么? 为什么? (*)是什么意思?

2 个答案:

答案 0 :(得分:1)

过去几天我一直在努力了解这一点。我认为这是它的工作原理:

“build-&gt; default”意味着如果我要求我的jar的所有“构建”依赖项,那么Ivy从存储库中提取该依赖项的“默认”版本。相反,如果您说“build-&gt; build”或等效“build”,那么Ivy会在存储库中查找标记为“build”的jar来满足该依赖关系。我认为在repo中拥有多个标记工件的主要目的是拥有“默认”,“源”,“javadoc”以及代码的“调试”版本。

我大量使用“provide-&gt; default”来指定我需要编译的jar,但我不需要添加到我的插件安装程序,因为我知道jar已经存在于运行时因为它由不同的安装人员提供。

答案 1 :(得分:0)

根据我的理解,在阅读"dependency" documentation(而不是"configurations" documentation which IMHO is less clear)之后,“主配置”(箭头的左侧;即当前模块的配置)被映射到“依赖”配置“(箭头的右侧),以确定当前模块的哪些配置需要哪些配置(

)。

从Ivy 1.3开始,依赖项配置可能会在括号中列出一个回退,并且允许这是一个通配符(“*”)。