1

我有这样的东西:

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

在我ivy.xml和我不理解“配置映射”的概念

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

4

2 回答 2

1

在过去的几天里,我一直试图自己理解这一点。我认为这就是它的工作原理:

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

我大量使用“provided->default”来指定我需要编译的 jar,但我不需要添加到我的插件安装程序中,因为我知道 jar 在运行时已经存在,因为它是由不同的安装程序。

于 2011-01-29T05:26:27.313 回答
0

据我了解,在阅读了“依赖”文档(而不是恕我直言不太清楚的“配置”文档)之后,“主配置”(箭头左侧;即当前模块的配置)被映射到“依赖”配置”(箭头右侧),以确定当前模块的哪些配置中需要依赖项的哪些配置。

从 Ivy 1.3 开始,依赖配置可能有一个在括号中列出的后备,并且允许是通配符(“*”)。

于 2014-04-28T10:08:26.920 回答