【发布时间】:2011-09-07 06:55:23
【问题描述】:
我正在使用 Ivy 进行项目依赖管理,除了我一直遇到的一个问题之外,它一直运行良好。 Ivy 正在下载某些依赖项,但它没有将它们安装到我的项目中。例如,log4j.jar 没有放在项目的 lib 文件夹中,即使它被列为依赖项并且正在成功下载。这是我的决心的输出:
ivy-resolve:
[ivy:configure] :: Ivy 2.2.0 - 20100923230623 :: http://ant.apache.org/ivy/ ::
[ivy:configure] :: loading settings :: file = C:\...\...\...\...\ivysettings.xml
[ivy:resolve] :: resolving dependencies :: com.gdi#gdi-core;0.0.1.SNAPSHOT
[ivy:resolve] confs: [default]
[ivy:resolve] found org.apache.axis#axis;1.4 in archiva.internal
[ivy:resolve] found org.apache.axis#axis-jaxrpc;1.4 in archiva.internal
[ivy:resolve] found org.apache.axis#axis-saaj;1.4 in archiva.internal
[ivy:resolve] found wsdl4j#wsdl4j;1.6.2 in archiva.internal
[ivy:resolve] found org.slf4j#slf4j-log4j12;1.6.1 in archiva.internal
[ivy:resolve] found org.slf4j#slf4j-api;1.6.1 in archiva.internal
[ivy:resolve] found log4j#log4j;1.2.16 in archiva.internal
[ivy:resolve] found log4j#apache-log4j-extras;1.1 in archiva.internal
[ivy:resolve] found org.apache.commons#commons-email;1.1 in archiva.internal
[ivy:resolve] found javax.mail#mail;1.4 in archiva.internal
[ivy:resolve] found javax.activation#activation;1.1 in archiva.internal
[ivy:resolve] found commons-discovery#commons-discovery;0.4 in archiva.internal
[ivy:resolve] found commons-logging#commons-logging;1.1 in archiva.internal
[ivy:resolve] found logkit#logkit;1.0.1 in archiva.internal
[ivy:resolve] found avalon-framework#avalon-framework;4.1.3 in archiva.internal
[ivy:resolve] found org.hibernate#hibernate-core;3.6.3.Final in archiva.internal
[ivy:resolve] found antlr#antlr;2.7.6 in archiva.internal
[ivy:resolve] found commons-collections#commons-collections;3.1 in archiva.internal
[ivy:resolve] found dom4j#dom4j;1.6.1 in archiva.internal
[ivy:resolve] found org.hibernate#hibernate-commons-annotations;3.2.0.Final in archiva.internal
[ivy:resolve] found org.hibernate.javax.persistence#hibernate-jpa-2.0-api;1.0.0.Final in archiva.internal
[ivy:resolve] found javax.transaction#jta;1.1 in archiva.internal
[ivy:resolve] found javax.validation#validation-api;1.0.0.GA in archiva.internal
[ivy:resolve] found ant#ant;1.6.5 in archiva.internal
[ivy:resolve] found javassist#javassist;3.12.0.GA in archiva.internal
[ivy:resolve] found cglib#cglib;2.2 in archiva.internal
[ivy:resolve] found asm#asm;3.1 in archiva.internal
[ivy:resolve] found org.hibernate#hibernate-validator;4.1.0 in archiva.internal
[ivy:resolve] found org.hibernate#hibernate-ehcache;3.6.3.Final in archiva.internal
[ivy:resolve] found net.sf.ehcache#ehcache-core;2.4.1 in archiva.internal
[ivy:resolve] found org.hibernate#hibernate-entitymanager;3.6.3.Final in archiva.internal
[ivy:resolve] found org.hibernate#hibernate-search;3.4.0.Final in archiva.internal
[ivy:resolve] found org.hibernate#hibernate-search-analyzers;3.4.0.Final in archiva.internal
[ivy:resolve] found org.apache.lucene#lucene-core;3.1.0 in archiva.internal
[ivy:resolve] found org.apache.lucene#lucene-analyzers;3.1.0 in archiva.internal
[ivy:resolve] found org.apache.solr#solr-analysis-extras;3.1.0 in archiva.internal
[ivy:resolve] found org.apache.solr#solr-core;3.1.0 in archiva.internal
[ivy:resolve] found org.apache.solr#solr-solrj;3.1.0 in archiva.internal
[ivy:resolve] found commons-io#commons-io;1.4 in archiva.internal
[ivy:resolve] found org.apache.lucene#lucene-highlighter;3.1.0 in archiva.internal
[ivy:resolve] found org.apache.lucene#lucene-memory;3.1.0 in archiva.internal
[ivy:resolve] found org.apache.lucene#lucene-misc;3.1.0 in archiva.internal
[ivy:resolve] found org.apache.lucene#lucene-spatial;3.1.0 in archiva.internal
[ivy:resolve] found org.apache.lucene#lucene-spellchecker;3.1.0 in archiva.internal
[ivy:resolve] found org.apache.solr#solr-commons-csv;3.1.0 in archiva.internal
[ivy:resolve] found commons-codec#commons-codec;1.4 in archiva.internal
[ivy:resolve] found commons-lang#commons-lang;2.4 in archiva.internal
[ivy:resolve] found org.apache.lucene#lucene-smartcn;3.1.0 in archiva.internal
[ivy:resolve] found org.apache.lucene#lucene-stempel;3.1.0 in archiva.internal
[ivy:resolve] found javax.jms#jms;1.1 in archiva.internal
[ivy:resolve] found javax.annotation#jsr250-api;1.0 in archiva.internal
[ivy:resolve] found org.hibernate#hibernate-search-infinispan;3.4.0.Final in archiva.internal
[ivy:resolve] found org.infinispan#infinispan-lucene-directory;4.2.1.FINAL in archiva.internal
[ivy:resolve] found org.infinispan#infinispan-core;4.2.1.FINAL in archiva.internal
[ivy:resolve] found org.jgroups#jgroups;2.12.0.Final in archiva.internal
[ivy:resolve] found org.jboss.javaee#jboss-transaction-api;1.0.1.GA in archiva.internal
[ivy:resolve] found org.jboss.marshalling#river;1.2.3.GA in archiva.internal
[ivy:resolve] found org.jboss.marshalling#marshalling-api;1.2.3.GA in archiva.internal
[ivy:resolve] found org.rhq.helpers#rhq-pluginAnnotations;3.0.1 in archiva.internal
[ivy:resolve] found i18nlog#i18nlog;1.0.10 in archiva.internal
[ivy:resolve] found org.hibernate#hibernate-c3p0;3.6.3.Final in archiva.internal
[ivy:resolve] found c3p0#c3p0;0.9.1 in archiva.internal
[ivy:resolve] found org.apache.lucene#lucene-queries;3.1.0 in archiva.internal
[ivy:resolve] found jakarta-regexp#jakarta-regexp;1.4 in archiva.internal
[ivy:resolve] found postgresql#postgresql;9.0-801.jdbc4 in archiva.internal
[ivy:resolve] found org.drools#drools-jsr94;5.1.1 in archiva.internal
[ivy:resolve] found org.drools#drools-core;5.1.1 in archiva.internal
[ivy:resolve] found org.mvel#mvel2;2.0.16 in archiva.internal
[ivy:resolve] found org.drools#drools-api;5.1.1 in archiva.internal
[ivy:resolve] found org.drools#drools-compiler;5.1.1 in archiva.internal
[ivy:resolve] found org.antlr#antlr-runtime;3.1.3 in archiva.internal
[ivy:resolve] found org.eclipse.jdt.core.compiler#ecj;3.5.1 in archiva.internal
[ivy:resolve] found org.drools#drools-decisiontables;5.1.1 in archiva.internal
[ivy:resolve] found org.drools#drools-templates;5.1.1 in archiva.internal
[ivy:resolve] found net.sourceforge.jexcelapi#jxl;2.6.10 in archiva.internal
[ivy:resolve] found jsr94#jsr94;1.1 in archiva.internal
[ivy:resolve] found javax.xml.bind#jaxb-api;2.2.1 in archiva.internal
[ivy:resolve] found javax.xml.stream#stax-api;1.0-2 in archiva.internal
[ivy:resolve] :: resolution report :: resolve 3414ms :: artifacts dl 98ms
[ivy:resolve] :: evicted modules:
[ivy:resolve] commons-logging#commons-logging;1.0.4 by [commons-logging#commons-logging;1.1] in [default]
[ivy:resolve] log4j#log4j;1.2.12 by [log4j#log4j;1.2.16] in [default]
[ivy:resolve] org.slf4j#slf4j-api;1.5.5 by [org.slf4j#slf4j-api;1.6.1] in [default]
[ivy:resolve] log4j#log4j;1.2.14 by [log4j#log4j;1.2.16] in [default]
---------------------------------------------------------------------
| | modules || artifacts |
| conf | number| search|dwnlded|evicted|| number|dwnlded|
---------------------------------------------------------------------
| default | 82 | 0 | 0 | 4 || 101 | 0 |
---------------------------------------------------------------------
[ivy:retrieve] :: retrieving :: com.gdi#gdi-core [sync]
[ivy:retrieve] confs: [default]
[ivy:retrieve] 0 artifacts copied, 73 already retrieved (0kB/45ms)
BUILD SUCCESSFUL
Total time: 5 seconds
文件 log4j.jar、infinispan-core-4.2.1.FINAL.jar 和 apache-log4j-extras-1.1 没有像其他文件一样添加到我的 lib 目录中,我必须手动添加它们。不知道是什么原因造成的或如何解决它。任何帮助将不胜感激。
这是包含依赖项的 ivy.xml 文件。 Log4j 是 slf4j-log4j12 的依赖,infinispan 是 hibernate-search-infinispan 的依赖。 log4j extras 是我项目的依赖项。
<?xml version="1.0" encoding="UTF-8"?>
<ivy-module
version="2.0"
xmlns:m="http://ant.apache.org/ivy/maven"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
<info
organisation="com.gdi"
module="gdi-core"
revision="0.0.1.SNAPSHOT" />
<dependencies>
<dependency
org="org.apache.axis"
name="axis"
rev="1.4" />
<dependency
org="org.apache.axis"
name="axis-jaxrpc"
rev="1.4" />
<dependency
org="org.apache.axis"
name="axis-saaj"
rev="1.4" />
<dependency
org="wsdl4j"
name="wsdl4j"
rev="1.6.2" />
<dependency
org="org.slf4j"
name="slf4j-log4j12"
rev="1.6.1" />
<dependency
org="log4j"
name="apache-log4j-extras"
rev="1.1" />
<dependency
org="org.apache.commons"
name="commons-email"
rev="1.1" />
<dependency
org="commons-discovery"
name="commons-discovery"
rev="0.4">
<exclude
module="servlet-api" />
</dependency>
<dependency
org="commons-logging"
name="commons-logging"
rev="1.1">
<exclude
module="servlet-api" />
</dependency>
<dependency
org="org.hibernate"
name="hibernate-core"
rev="3.6.3.Final">
<exclude
module="jboss-jacc-api_JDK4" />
</dependency>
<dependency
org="org.hibernate"
name="hibernate-validator"
rev="4.1.0" />
<dependency
org="org.hibernate"
name="hibernate-ehcache"
rev="3.6.3.Final" />
<dependency
org="org.hibernate"
name="hibernate-entitymanager"
rev="3.6.3.Final" />
<dependency
org="org.hibernate"
name="hibernate-search"
rev="3.4.0.Final">
<exclude
module="jgroups" />
</dependency>
<dependency
org="org.hibernate"
name="hibernate-search-infinispan"
rev="3.4.0.Final" />
<dependency
org="org.hibernate"
name="hibernate-c3p0"
rev="3.6.3.Final" />
<dependency
org="org.hibernate"
name="hibernate-commons-annotations"
rev="3.2.0.Final" />
<dependency
org="org.apache.lucene"
name="lucene-queries"
rev="3.1.0" />
<dependency
org="postgresql"
name="postgresql"
rev="9.0-801.jdbc4" />
<dependency
org="org.drools"
name="drools-jsr94"
rev="5.1.1" />
</dependencies>
</ivy-module>
更新:
似乎未下载的库是“捆绑包”......
[ivy:resolve] [NOT REQUIRED] org.slf4j#slf4j-api;1.6.1!slf4j-api.jar
[ivy:resolve] [NOT REQUIRED] log4j#log4j;1.2.16!log4j.jar(bundle)
[ivy:resolve] [NOT REQUIRED] javax.mail#mail;1.4!mail.jar
【问题讨论】:
-
一些模块被驱逐(ant.apache.org/ivy/history/2.1.0/ivyfile/conflicts.html)也许丢失的 jar 是被驱逐模块的依赖项(很难说)。
-
冲突只是表明旧版本的 log4j 被淘汰,转而使用 log4j-1.2.16
标签: ant ivy dependency-management