常春藤解决了错误的依赖

时间:2012-08-08 10:19:00

标签: dependencies ivy

我正在使用Ivy来解决项目中的依赖关系。

我的ivy.xml

中的依赖关系
<dependency org="org.mule.tools" name="ibean-archetype" rev="3.1.0" 
            conf="compile;runtime"/>

我在控制台

中收到错误消息
[ivy:resolve] :: problems summary ::
[ivy:resolve] :::: WARNINGS
[ivy:resolve]           [NOT FOUND  ] org.mule.tools#ibean-archetype;3.1.0!ibean
-archetype.maven-archetype (16ms)
[ivy:resolve]   ==== public: tried
[ivy:resolve]     http://192.168.101.173:8080/nexus/content/groups/public/org/mule/tools/ibean-archetype/3.1.0/ibean-archetype-3.1.0.maven-archetype
[ivy:resolve]           ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve]           ::              FAILED DOWNLOADS            ::
[ivy:resolve]           :: ^ see resolution messages for details  ^ ::
[ivy:resolve]           ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve]           :: org.mule.tools#ibean-archetype;3.1.0!ibean-archetype.maven-archetype
[ivy:resolve]           ::::::::::::::::::::::::::::::::::::::::::::::

为什么ibean-archetype-3.1.0.jar已解析为ibean-archetype-3.1.0.maven-archetype ???我很困惑。

我的常春藤使用nexus和nexus中ibean-archetype-3.1.0.jar的信息

<dependency>
  <groupId>org.mule.tools</groupId>
  <artifactId>ibean-archetype</artifactId>
  <version>3.1.0</version>
</dependency>

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题...

对我来说,解决问题的方法是改变以下几行:

<dependency org="io.takari.junit" name="takari-cpsuite" rev="1.2.7"/>

为:

<dependency org="io.takari.junit" name="takari-cpsuite" rev="1.2.7">
        <artifact name="takari-cpsuite"/>
</dependency>

我甚至不需要在artifact-name中指定ext或type属性来解决问题。

我认为Ivy错误地将pom(已解析库)的包装标签内容作为扩展名...

我们的库都在.pom中有<packaging>标记,

请参阅 ibean-archetype(对于您使用的库)和 takari(对于我使用的库)