[英]How to use Apache ivy to resolve dependency with multiple files?
這是我的ivy.xml:
<?xml version="1.0" encoding="UTF-8"?>
<ivy-module version="2.0">
...
<dependencies>
<dependency org="spring" name="richclient" rev="1.1.0"/>
</dependencies>
</ivy-module>
和ivy-settings.xml:
<property name="ivy.local.default.root" value="/home/---/dev/Java/_libraries/_ivy" override="false"/>
<property name="ivy.local.default.ivy.pattern" value="[organisation]/[module]/[revision]/[type]s/[artifact].[ext]" override="false"/>
<property name="ivy.local.default.artifact.pattern" value="[organisation]/[module]/[revision]/[type]s/[artifact].[ext]" override="false"/>
<resolvers>
<filesystem name="local">
<ivy pattern="${ivy.local.default.root}/${ivy.local.default.ivy.pattern}" />
<artifact pattern="${ivy.local.default.root}/${ivy.local.default.artifact.pattern}" />
</filesystem>
</resolvers>
常春藤嘗試找到/home/---/dev/Java/_libraries/_ivy/spring/richclient/1.1.0/jars/richclient.jar
這就是問題所在。 圖書館有4個jar文件。
如何從ivy.xml中的一個依賴項將項目中的所有jar都包含在內?
謝謝
我假設您剛剛在本地下載了jars? 除非您還為下載的文件編寫一個ivy.xml文件,並列出與該模塊關聯的工件,否則它將不起作用(請參閱ivy.xml doco的出版物部分)
為什么不通過使用Spring提供的Maven存儲庫來避免維護自己的其他模塊版本的麻煩呢?
將以下內容添加到您的ivy-settings.xml文件中:
<resolvers>
<ibiblio name="spring-rcp" m2compatible="true" root="http://spring-rich-c.sourceforge.net/maven2repository"/>
</resolvers>
盡管Ivy可以使用單個JAR文件上的依賴項來工作,但如果為依賴項本身定義了單獨的ivy.xml
文件(它指定了4個單獨的JAR文件),則效果更好。 這個ivy.xml
定義了Ivy所謂的模塊。
然后,應用程序的ivy.xml
表示對該模塊的依賴性,而不是對特定JAR文件的依賴性。
常春藤網站上有關於模塊的教程,我強烈建議閱讀
http://ant.apache.org/ivy/history/latest-milestone/tutorial/conf.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.