Maven:net.sf.json-libがありません


101

中央リポジトリで net.sf.json-libを見つけました。(バージョン2.3で)依存関係をコピーして貼り付けた後、ビルドすると次のエラーが発生します。

[INFO] Unable to find resource 'net.sf.json-lib:json-lib:jar:2.2.3' in repository central (http://repo1.maven.org/maven2)

[ERROR] BUILD ERROR
[INFO] ---------------------------------------------------------
[INFO] Failed to resolve artifact.

Missing:
----------
1) net.sf.json-lib:json-lib:jar:2.3

  Try downloading the file manually from the project website.

バージョン2.2.3を使用してみましたが、同じエラーが発生します。このエラーが発生するのはなぜですか?ローカルにインストールすることで上書きできますが、何が問題なのかを理解したいと思います。

編集 -ローカルリポジトリからパッケージを削除して再試行しましたが、今回はチェックサムエラーが発生しました。私はjson-libでバグレポートを提出するべきだと思います。

[WARNING] *** CHECKSUM FAILED - Error retrieving checksum file for net/sf/json-lib/json-lib/2.3/json
-lib-2.3.pom - IGNORING

Maven Centralのファイルのチェックサムが正しくないようです...とにかくそれを信頼するかしないかを決める必要があります。
khmarbaise 2010年

回答:


268

maven-centralリポジトリを見る:

http://repo1.maven.org/maven2/net/sf/json-lib/json-lib/2.4/

次のように、この依存関係の分類子を指定する必要があります。jdk13またはjdk15のいずれかです。

    <dependency>
        <groupId>net.sf.json-lib</groupId>
        <artifactId>json-lib</artifactId>
        <version>2.4</version>
        <classifier>jdk15</classifier>
    </dependency>

2
私は同じ問題を抱えています。でBuildConfig.groovy、私はします:dependencies { runtime group:'net.sf.json-lib', name:'json-lib', version:'2.4', classifier:'jdk15' }しかし、役に立ちません。わかりますFailed to resolve dependency.。なぜか?
Alexandre Bourlier

2
正しい。search.maven.org/… が嘘をついていて、分類子を省略していることは役に立ちません。
djsadinoff 2012年

FYI、プレイフレームワーク1.1を使用してそれらのために、あなたはMavenの中心からこのjarファイルを使用することはできません- play.lighthouseapp.com/projects/57987-p​​lay-framework/tickets/...
ripper234

いいね!最初にjdk15の依存関係を追加したときに分類子が設定されなかったのはなぜですか。
heyomi 2013年

2
アイビーに相当するものは何ですか?
ロン・ロメロ

25

サンプルとしてのグラドル

「net.sf.json-lib:json-lib:2.4:jdk15」をコンパイルします

または

コンパイルグループ: 'net.sf.json-lib'、名前: 'json-lib'、バージョン: '2.4'、分類子: 'jdk15'

さらに分類子を検索したところ、jdk15以外は見つからなかった(jdk16またはjdk17を探してはいけない)


これは私にはうまくいきませんでした。@ icyrock.comの提案と同様にローカルにファイルをインストールし、セクションのmavenLocal()mavenCentral()に配置する必要がありましたrepositories
ben3000

ドキュメントのみ:推移的な依存関係に関連するGradleに少なくとも1つのバグがあり、私が知る限り、json-libはPOMに分類子データを提供していません(これこれを参照)。上記のようにGradleがチェックサムエラーをチェックするかどうかを判断する方法も見つかりませんでした。
ben3000

2

信頼性に関するkhimarbaiseのコメントを除いて、maven installを使用してローカルにインストールできます。

mvn install:install-file  -Dfile=path-to-your-artifact-jar
                          -DgroupId=your.groupId
                          -DartifactId=your-artifactId
                          -Dversion=version
                          -Dpackaging=jar
                          -DlocalRepositoryPath=path-to-specific-local-repo

2
私はすでにjarファイルを持っていたので(プロジェクトをmavenに変換しています)、持っていたものをインストールしました。ありがとう。
ripper234 2010年

1

ivyユーザーの場合、この依存関係を適切に検出するようにivy.xmlを構成するために多くの異なる反復を試行した後、これは最終的に私にとってうまくいきました:

  <dependency org="net.sf.json-lib" name="json-lib" rev="2.4">
        <artifact name="json-lib" url="http://repo1.maven.org/maven2/net/sf/json-lib/json-lib/2.4/json-lib-2.4-jdk15.jar"/>     
    </dependency>

固定されたURLは最適なソリューションではないと思います。これはIvyでも機能します。<dependency org = "net.sf.json-lib" name = "json-lib" rev = "2.3"> <artifact name = "json- lib "maven:classifier =" jdk15 "type =" jar "ext =" jar "/> </ dependency>
stumbav

@stumbav、これは私にはうまくいきません。エラーが発生:解析済み:[[致命的エラー] ivy.xml:19:137:要素タイプ「アーティファクト」に関連付けられた属性「maven:classifier」の接頭辞「maven」がバインドされていない
Jitesh Sojitra
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.