ビルド システムを Ant から Ant with Ivy に変換している途中で、必要な特定の jar を指定する際に問題が発生しました。
- groupId : net.sf.json-lib
- artifactId : json-lib
- バージョン: 2.3
Ivy で次のように指定しました。
<dependency org="net.sf.json-lib" artifact="json-lib"
rev="2.3" conf="compile->default"/>
そして、次のエラーが発生しました:
[ivy:retrieve] ==== public: tried
[ivy:retrieve] http://buildl01.tcprod.local/artifactory/libs-release/net/sf/json-lib/json-lib/2.3/json-lib-2.3.jar
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve] :: FAILED DOWNLOADS ::
[ivy:retrieve] :: ^ see resolution messages for details ^ ::
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve] :: net.sf.json-lib#json-lib;2.3!json-lib.jar
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
json-lib-2.3.jar
Ivyがリポジトリからファイルをダウンロードしようとしたことに注意してください。
Central Maven Repositoryを検索したところ、アーティファクトは呼び出されておらずjson-lib-2.3.jar
、json-lib-2.3-jdk-13.jar
またはjson-lib-2.3-jdk-15.jar
.
問題は、アーティファクトの名前の指定方法です。バージョン番号は、jar 名の途中に表示されます。アーティファクトが「json-lib-jdk-15-2.4.jar」の場合、次のようにできます。
<dependency org="net.sf.json-lib" artifact="json-lib"
rev="2.3" conf="compile->default">
<artifact name="json-lib-jdk-15"/>
</dependency>
この jar をダウンロード用に指定するにはどうすればよいですか?