我想单独从模块的jar工件发布模块的依赖关系。仅发布依赖关系
<?xml version="1.0" encoding="UTF-8"?>
<ivy-module version="2.0">
<info organisation="com.mycompany" module="platform" />
<configurations defaultconfmapping="release->*;compile->*" defaultconf="release">
<conf name="release" />
<conf name="compile" extends="release" />
</configurations>
<publications>
<artifact name="platform-api" type="jar" ext="jar" />
</publications>
<dependencies>
<dependency org="com.google.inject" name="guice" rev="3.0" />
<dependency org="org.slf4j" name="slf4j-api" rev="1.6.6" />
<dependency org="com.google.guava" name="guava" rev="13.0-rc1" conf="compile" />
<dependency org="log4j" name="log4j" rev="1.2.17" conf="compile" />
<dependency org="org.slf4j" name="slf4j-log4j12" rev="1.6.6" conf="compile" />
</dependencies>
</ivy-module>
对于上述结构,我想包括吉斯仅& SLF4J-API罐子,而平台api.jar中的伪影。我目前的解决方案是定义从属模块中的两个依赖,一个传递和其他未:
<dependency org="com.mycompany" name="platform" rev="1.0-SNAPSHOT" conf="myconf->release">
<exclude org="com.mycompany" />
</dependency>
<dependency org="com.mycompany" name="platform" rev="1.0-SNAPSHOT" transitive="false" conf="myotherconf->release" />
但这种方法会导致问题,当第三个模块是依赖于这两个模块,它只是丑陋。
谢谢!上面的用法是一本教科书质量的例子,它丰富了我的视野,并为第三个模块提出了一个解决方案。 – b10y 2012-07-31 14:39:08