我的项目有多个独立的模块,每个模块都有自己的常 Spring 藤文件 . 一些模块是“顶级”的,因为它们不依赖于它们,它们只依赖于其他模块 .
我想为这些模块生成一个pom,用于发布我的用户要使用的依赖项 .
makepom任务只通过 ivyfile
属性接受单个文件 . 我创建了一个主模块,它声明它依赖于顶级模块并将其提供给makepom,但它不会传递包含顶级模块的依赖关系,它只列出顶级模块本身 .
我意识到我可以提供几个pom文件,但为了我的理智,我宁愿只保留一个 .
所以我想知道你是否可以以某种方式将多个常 Spring 藤文件传递给make pom任务,或者当我使用主Ivy文件时有一种方法可以让它列出所有依赖项?或者在最坏的情况下,有没有一种简单的方法来合并pom文件而不用手工完成?
2 回答
如果这是文档问题,请配置每个模块以生成其传递依赖关系的报告,请参阅ivy report任务 .
makepom任务只接受一个参数,因为就像Maven项目模块只有一个声明其依赖项的文件一样 .
也许您可以做的是创建一个父常 Spring 藤文件,它依赖于每个子模块?
正如Mark O'Connor指出的那样,
<ivy:report>
任务在记录所有传递 jar 方面做得非常出色 . 运行时,编译等需要哪些 .另一种可能性是使用
<ivy:retrieve>
将主模块使用的所有jar检索到空目录中 . 即使您的项目本身不需要这样做 . 所需的jar列表将是一个简单的目录列表 .