我有以下依赖关系:
<dependency org="foo" name="bar" rev="1.0" conf="war-runtime->runtime" />
但是,我想让它解决的jar称为 foo_bar-g.jar
。
目前它尝试foo_bar.jar
失败,因为jar不存在。
我可以指定jar中的名称或依赖项中的模式吗?
我有一个ivy-settings.xml文件中指定的解析程序列表,但此文件在其他应用程序中共享,因此我无法对其进行更改。
答案 0 :(得分:2)
我想出来了:
在ivy_settings.xml
中添加自定义解析器:
<resolvers>
<filesystem checkconsistency="false" checkmodified="true" name="foo.bar">
<artifact pattern="//path/to/foo_bar-g.[ext]"/>
</filesystem>
</resolvers>
说明您要将此解析程序用于bar
模块。
<modules>
<module name="bar" organisation="foo" resolver="foo.bar"/>
</modules>
然后在ivy.xml
:
<dependency org="foo" name="bar" rev="1.0">
<artifact name="bar" type="jar" ext="jar" conf="war-runtime->runtime"/>
</dependency>
答案 1 :(得分:0)
我没有完全按照此处所述的问题进行操作。依赖语句应该查看如何在foo.bar ivy.xml中定义“运行时”配置。这就是它在存储库中说明要查看的jar文件的位置。
获取后,将根据解析器的设置方式将文件复制下来。通常是bar-1.0.jar
问题出在哪里?在决议?或者它是否正在解析并且本地文件的命名方式与您想要的不同?