我在同一个项目中使用json-schema-validator和guava。当我尝试更新任何一个时,我的findbugs会发生冲突,因此遗漏了一个lib。
工作版本是:
两者都依赖于findbugs 1.3.9
我想使用的版本:
这里json-schema-validator需要findbugs(jsr305)2.0.1和guava需要findbugs 1.3.9。有没有解决这个问题的方法?我的意思是我可以在我的项目中使用json-schema-validator版本2.2.1和guava 16.0.1。
示例文件:
的build.xml
<project name="example" default="download"
xmlns:ivy="antlib:org.apache.ivy.ant">
<target name="download" description="resolve dependencies with ivy">
<ivy:resolve />
<ivy:retrieve sync="true" type="jar"/>
</target>
</project>
ivy.xml,正在工作
<?xml version="1.0" encoding="ISO-8859-1"?>
<ivy-module version="2.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
<info organisation="example" module="example" status="integration">
</info>
<dependencies>
<dependency org="com.github.fge" name="json-schema-validator" rev="2.0.0" />
<dependency org="com.google.guava" name="guava" rev="13.0.1" />
</dependencies>
</ivy-module>
ivy.xml,无法正常工作
<?xml version="1.0" encoding="ISO-8859-1"?>
<ivy-module version="2.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
<info organisation="example" module="example" status="integration">
</info>
<dependencies>
<dependency org="com.github.fge" name="json-schema-validator" rev="2.2.1" />
<dependency org="com.google.guava" name="guava" rev="16.0.1" />
</dependencies>
</ivy-module>
驱逐通知:
[ivy:resolve] :: evicted modules:
[ivy:resolve] com.google.code.findbugs#jsr305;1.3.9 by [com.google.code.findbugs#jsr305;2.0.1] in [default]
答案 0 :(得分:3)
@Julien感谢提示,根据示例,我将检索行更改为
<ivy:retrieve pattern="lib/[artifact]-[revision].[ext]" sync="true"/>
现在有效。