我有这样的东西:
<configurations defaultconfmapping="build->default;compile->compile(*),master(*);test,runtime->runtime(*),master(*); statistic->stistic(*)">
在我的ivy.xml
中,我不理解'配置映射'的概念
谁被映射到什么?
为什么?
(*)
是什么意思?
答案 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开始,依赖项配置可能会在括号中列出一个回退,并且允许这是一个通配符(“*”)。