json-libは普通にdependencyに足すだけだとダウンロードに失敗する件
はまった。
m2eclipseでさくっと足した場合の定義
<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.3</version> </dependency>
これだとエラーになる。
Downloading: http://repo1.maven.org/maven2/net/sf/json-lib/json-lib/2.2.3/json-lib-2.2.3.jar [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to resolve artifact. Missing: ---------- 1) net.sf.json-lib:json-lib:jar:2.2.3 Try downloading the file manually from the project website. Then, install it using the command: mvn install:install-file -DgroupId=net.sf.json-lib -DartifactId=json-lib -Dversion=2.2.3 -Dpackaging=jar -Dfile=/path/to/file Alternatively, if you host your own repository you can deploy the file there: mvn deploy:deploy-file -DgroupId=net.sf.json-lib -DartifactId=json-lib -Dversion=2.2.3 -Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id] Path to dependency: 1) jp.tanamon:wicket_labo:war:0.0.1-SNAPSHOT 2) net.sf.json-lib:json-lib:jar:2.2.3 ---------- 1 required artifact is missing. for artifact: jp.tanamon:wicket_labo:war:0.0.1-SNAPSHOT from the specified remote repositories: central (http://repo1.maven.org/maven2)
失敗したファイルを直接ブラウザでファイルを見ても、確かにない。
1つ上のディレクトリを見てみる。
json-lib-2.2.3-jdk13-javadoc.jar json-lib-2.2.3-jdk13-sources.jar json-lib-2.2.3-jdk13.jar json-lib-2.2.3-jdk15-javadoc.jar json-lib-2.2.3-jdk15-sources.jar json-lib-2.2.3-jdk15.jar json-lib-2.2.3.pom
なんかファイル名部分がpomと違っててjdk13とかjdk15とかついてる。dependencyにそういう指定って付けられたっけ?
で、困ったときのPOM Reference。
サンプルの定義にはないけど、後の文章にclassifierという指定値があることが書かれている。
ということは、こうなのか?
<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.3</version> <classifier>jdk15</classifier> </dependency>
で、やってみたら通りましたとさ。