簡體   English   中英

常春藤不解決公共Maven倉庫的傳遞依賴

[英]Ivy not resolving transitive dependencies from public maven repos

考慮以下常春藤的依賴關系,

<dependency org="org.fusesource.restygwt" name="restygwt" rev="1.3"
 conf="gwtcompile->default; compile->default"/>

<dependency org="org.jboss.resteasy" name="resteasy-jaxrs" rev="2.3.4.Final"
 conf="compile->compile(*),runtime(*);runtime->runtime(*)"/>

他們依賴於由

http:// myivyserver:8888 / mirrored /。

由ivysettings解析器鏈接到...

<url name="mirrored" m2compatible="true">
  <artifact
    pattern="http://myivyserver:8888/mirrored/${maven2.artifact.pattern}" />
</url>

在這里,我可以看到鏡像目錄完全復制了遠程Maven存儲庫的偽像。

我習慣了Maven,並在Eclipse上看到了顯示Maven依賴項的buildpath。

現在,我正在為項目創建常春藤相關性。 由於Ivy eclipse插件,我希望看到類似的Ivy依賴項節點,並且顯示所有jar。

但是,eclipse buildpath中的Ivy依賴項節點不會顯示鏡像pom傳遞指定的任何jar。

例如,

<dependency org="org.fusesource.restygwt" name="restygwt" rev="1.3"
 conf="gwtcompile->default; compile->default"/>

<dependency org="org.jboss.resteasy" name="resteasy-jaxrs" rev="2.3.4.Final"
 conf="compile->compile(*),runtime(*);runtime->runtime(*)"/>

兩個依賴項的pom均指定對javax.ws.rs的依賴項(jsr311-api)

<dependency>
  <groupId>javax.ws.rs</groupId>
  <artifactId>jsr311-api</artifactId>
  <version>1.1</version>
  <scope>provided</scope>
</dependency>

但是,javax.ws.rs(jsr311-api)不會顯示在ivy管理的項目的buildpath庫中,就像Maven管理的項目一樣。

我還要做些什么才能使ivy插件解決由於maven poms引起的傳遞依賴關系?

謝謝。

URL解析器考慮Maven布局,但不考慮pom依賴性。 當我實現此功能時,ibiblio解析器能夠解析pom的依賴關系。

http://ant.apache.org/ivy/history/latest-milestone/resolver/ibiblio.html
<ibiblio name="maven2" m2compatible="true" root="http://myivyserver:8888/mirrored">

我用了很長時間,因為我在代碼中更喜歡非傳遞性的依賴關系,因此我已經完成了使用純URL解析器的工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM