我正在使用Ivy来解决我的小项目中的依赖.这是我第一次这样做,因为我的项目非常小,所以要学习更多.
我在5分钟前尝试下载log4j时出现问题.
我的配置非常基础,我有一个ant任务:
<target name="resolve" description="--> retrieve dependencies with ivy">
<ivy:retrieve/>
</target>
Run Code Online (Sandbox Code Playgroud)
我的Ivy.xml文件是这样的:
<dependency org="javax.servlet" name="servlet-api" rev="2.5" />
<dependency org="log4j" name="log4j" rev="1.2.15" />
</dependencies>
Run Code Online (Sandbox Code Playgroud)
问题似乎发生在常春藤试图下载jms 1.1(我想它需要log4j),正如我在控制台中看到的那样:
:
:::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve] :: FAILED DOWNLOADS ::
[ivy:retrieve] :: ^ see resolution messages for details ^ ::
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve] :: javax.jms#jms;1.1!jms.jar
[ivy:retrieve] :: com.sun.jdmk#jmxtools;1.2.1!jmxtools.jar
[ivy:retrieve] :: com.sun.jmx#jmxri;1.2.1!jmxri.jar
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
Run Code Online (Sandbox Code Playgroud)
有什么我能做的吗?
非常感谢你们.
F
问题是,正如您已经意识到的那样,这些罐子不在远程存储库中.但是你的程序可能并不真正需要它们.Ivy尝试下载它们的唯一原因是因为它们是在ibiblio的pom.xml中声明的.如果您尝试1.2.14版本,您将看到这些传递依赖项不在1.2.14 pom中,因此Ivy不会下载它们.
或者,如果您希望坚持使用1.2.15,可以在您的ivy.xml文件中添加一个exclude元素,告诉Ivy忽略这些库:
<dependency org="log4j" name="log4j" rev="1.2.15">
<exclude org="com.sun.jdmk"/>
<exclude org="com.sun.jmx"/>
<exclude org="javax.jms"/>
</dependency>
Run Code Online (Sandbox Code Playgroud)
希望有帮助:)
归档时间: |
|
查看次数: |
7719 次 |
最近记录: |