我對於常春藤來說是全新的,所以不要因爲比較基本的問題而被指責。Apache常春藤。 JbossAS,依賴關係以及關於常青藤的一些基本問題
我正在研究項目,該項目取決於jbossAS 4.0.3
的某些庫。 準確地說 - 有jboss-4.0.3-scheduler,jboss-4.0.3-jboss-system
,jboss-4.0.3-jboss
,jboss-4.0.3-jbossall-client
。所以我有一個合乎邏輯的問題 - 我如何指定常春藤在公共資料庫中找到它們?或者在這種情況下利用常春藤是錯誤的方向?
而另一個簡單的問題 - 例如,在過去,這些項目依賴於castor-0.9.7
,axis-1.3
和log4j
- 常春藤依賴解析後 - 我有很多其他的罐子像activation-1.1.jar
,axis-saaj-1.3.jar
,mail-1.4.jar
等。所以過去只有3個罐子依賴 - 現在我有10個。我真的需要它們嗎?
什麼是確切知道我需要這個額外的罐子? (畢竟這個項目正在使用舊的config - 3個jar)。
如果我有一些神器(依賴項目)會怎麼樣。其他項目依賴於它,但我不希望傳遞依賴性得到解決。這只是感興趣的問題))
我這是怎麼啦拉動的依賴(從本地回購),和我想要的東西 - 從公共回購拉他們(如果可能):
<ivy-module version="2.2">
<info organisation="org.btl" module="BtlAppServer" revision="1.7"/>
<configurations defaultconfmapping="default">
<conf name="compile" visibility="private"/>
<conf name="test" extends="compile" visibility="private"/>
<conf name="master" />
<conf name="runtime" extends="compile" />
<conf name="default" extends="master,runtime"/>
</configurations>
<publications>
<artifact conf="master"/>
</publications>
<dependencies>
<dependencies>
<dependency org="jboss" name="jboss" rev="4.0.3" conf="*->default" />
<dependency org="jboss" name="jbossall-client" rev="4.0.3"
conf="*->default"/>
<dependency org="jboss" name="jboss-system" rev="4.0.3" conf="*->default"/>
<dependency org="jboss" name="scheduler-plugin" rev="4.0.3"
conf="*->default"/>
<dependency org="org.btl" name="BtlCommon" rev="latest.integration" />
</dependencies>
</ivy-module>
setttings文件這個東西:
<ivysettings>
<settings defaultResolver="myChain"/>
<include url="${ivy.default.settings.dir}/ivysettings-public.xml"/>
<include url="${ivy.default.settings.dir}/ivysettings-shared.xml"/>
<include url="${ivy.default.settings.dir}/ivysettings-local.xml"/>
<include url="${ivy.default.settings.dir}/ivysettings-main-chain.xml"/>
<include url="${ivy.default.settings.dir}/ivysettings-default-chain.xml"/>
<resolvers>
<chain name="myChain" returnFirst="true">
<resolver ref="local"/>
<!-- JBoss -->
<ibiblio name="jboss-nexus" m2compatible="true"
root="https://repository.jboss.org/nexus/content/groups/developer/"
pattern="[organisation]/[module]/[revision]/[artifact]-[revision](-
[classifier]).[ext]"/>
<ibiblio name="ibiblio" m2compatible="true" />
</chain>
</resolvers>
<modules>
<module organisation='org.btl' resolver='local' />
</modules>
</ivysettings>
關於第二個問題文件的ivy.xml:
<ivy-module version="2.2">
<info organisation="org.btl" module="BtlCommon" revision="1.7"/>
<configurations defaultconfmapping="default">
<conf name="compile" visibility="private"/>
<conf name="test" extends="compile" visibility="private"/>
<conf name="master" />
<conf name="runtime" extends="compile" />
<conf name="default" extends="master,runtime"/>
</configurations>
<publications>
<!--get the artifact from our module name-->
<artifact conf="master"/>
</publications>
<dependencies>
<dependency org="axis" name="axis" rev="1.3" conf="*->default" />
<dependency org="castor" name="castor" rev="0.9.7" conf="*->default" />
<dependency org="log4j" name="log4j" rev="1.2.15" conf="*->default" >
<exclude org="com.sun.jdmk"/>
<exclude org="com.sun.jmx"/>
<exclude org="javax.jms"/>
</dependency>
</dependencies>
</ivy-module>
不知道這是否可以幫助一些)
可以將[及物=假](https://ant.apache.org/ivy/history/latest-milestone/use/resolve.html)禁止傳遞依賴 – oers
,你可以請張貼你的ivy.xml,也許你的ivysettings.xml? – oers
jboss依賴 - 部分看起來不錯,這是正確的做法。我認爲它工作正常? – oers