我使用不同的 ivy 配置将组件的一些 atifacts 发布到 maven 存储库。例如,我采用以下方式(常春藤文档)来做同样的事情。
<ivy-module version="1.0">
<info organisation="org.apache" module="filter"/>
<configurations>
<conf name="api" description="only provide filter framework API"/>
<conf name="homemade-impl" extends="api" description="provide a home made implementation of our api"/>
</configurations>
<publications>
<artifact name="filter-api" type="jar" conf="api" ext="jar"/>
<artifact name="filter-hmimpl" type="jar" conf="homemade-impl" ext="jar"/>
</publications>
</ivy-module>
根据上面的配置,生成的 artifacts 是filter-api.jar和filter-hmimpl.jar,我生成了一个 pom 文件filter.pom并发布到一个 maven 仓库中。
现在,当我尝试使用以下内容解决另一个组件中的工件filter-api时..
<dependency org="org.apache" name="filter" rev="3.1" conf="default->api"/>
但它不起作用,我相信我的 filter.pom 应该包含一些这样的模块,以使其工作..
<modules>
<module>api</module>
<module>homemade-impl</module>
</modules>
我是否正确,如果是的话,我如何将不同的常春藤conf映射到maven中的模块。