19

私はcom.sun.jersey-server/json / clientの少し古いバージョン(1.5)を使用していますが、これはこのバージョンである必要があるため、新しいバージョンの使用を提案しないでください。

私のpom.xmlでは、次のように参照しています。

    <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-server</artifactId>
        <version>1.5</version>
        <type>jar</type>
        <scope>compile</scope>
        <exclusions>
            <exclusion>
                <!-- version conflicts with explicit direct dependency -->
                <groupId>org.codehaus.jettison</groupId>
                <artifactId>jettison</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

コンパイルすると、この出力にエラーが発生します。

    [INFO] Scanning for projects...
    [INFO]------------------------------------------------------------------------
    [INFO] Building MediaAssistantWebService
    [INFO]    task-segment: [clean, install]
    [INFO]------------------------------------------------------------------------
     [...]
    [INFO] Using 'UTF-8' encoding to copy filtered resources.
    [INFO] Copying 1 resource
    Downloading: http://repositories.dai-labor.de/extern/content/repositories/dai-open/com/sun/jersey/jersey-server/1.5/jersey-server-1.5.pom
    [INFO] Unable to find resource 'com.sun.jersey:jersey-server:pom:1.5' in repository dai-open (http://repositories.dai-labor.de/extern/content/repositories/dai-open)
    Downloading: http://download.java.net/maven/2//com/sun/jersey/jersey-server/1.5/jersey-server-1.5.pom 10K downloaded  (jersey-server-1.5.pom)
    Downloading: http://maven.glassfish.org/content/groups/glassfish/com/sun/jersey/jersey-project/1.5/jersey-project-1.5.pom 185b downloaded  (jersey-project-1.5.pom)
    [WARNING] *** CHECKSUM FAILED - Checksum failed on download: local = '6c9fd3d150b8a5f0ca676f49b8ed603793cabebb'; remote = '<html><head><title>301' - RETRYING
    Downloading: http://maven.glassfish.org/content/groups/glassfish/com/sun/jersey/jersey-project/1.5/jersey-project-1.5.pom185b downloaded  (jersey-project-1.5.pom)
    [WARNING] *** CHECKSUM FAILED - Checksum failed on download: local '6c9fd3d150b8a5f0ca676f49b8ed603793cabebb'; remote = '<html><head><title>301' - IGNORING
    [INFO] ------------------------------------------------------------------------
    [ERROR] BUILD ERROR
    [INFO] ------------------------------------------------------------------------
    [INFO] Error building POM (may not be this project's POM).

    Project ID: null:jersey-server:bundle:null

    Reason: Cannot find parent: com.sun.jersey:jersey-project for project: null:jersey-server:bundle:null for project null:jersey-server:bundle:null

解決策を検索した後、このリポジトリをpomに追加したので、mavenは最初にそこを調べます。

<repository>
  <id>maven2-repository.dev.java.net</id>
  <name>Java.net Repository for Maven</name>
  <url>http://download.java.net/maven/2/</url>
  <layout>default</layout>
</repository>

しかし、それは何もしませんでした。フォルダを削除して再.m2/jersey試行mvn clean compileしました。それでも、glassfish-404リポジトリからダウンロードしようとします。

正しくダウンロードされるように、私が何を変更する必要があるかを誰かが知っていますか?

4

5 に答える 5

21

他のものの前にmaven centralのリポジトリを追加してみてください:

<repositories>
    <repository>
        <id>maven-central</id>
        <url>http://repo1.maven.org/maven2</url>
    </repository>
    ...
</repositories>

より良いオプションは、nexus サーバーをセットアップし、pom ファイルのリポジトリ セクションを削除することです 。悪い考え/

于 2012-07-27T15:11:00.670 に答える
4

jersey が参照している pom を見ると、glassfish.org のリポジトリが含まれています。 http://download.java.net/maven/2//com/sun/jersey/jersey-server/1.5/jersey-server-1.5.pom

<repositories>
    <repository>
        <id>glassfish-repository</id>
        <name>Repository for Glassfish</name>
        <url>http://maven.glassfish.org/content/groups/glassfish</url>
    </repository>
</repositories>

推移的な依存関係をダウンロードしようとすると、サーバーはリダイレクト応答を送信するため、提供したログにチェックサム エラーが表示されます。

ブラウザーでこれを試してください: http://maven.glassfish.org/content/groups/glassfish/com/sun/jersey/jersey-project/1.5/jersey-project-1.5.pom

これがあなたの問題の解決策ではないことはわかっていますが(そして面倒です)、mvn installjerser-server 1.5に必要な依存関係をローカルで試して、それらをダウンロードしようとしないようにすることはできますか?

于 2012-07-27T15:11:49.867 に答える
4

私にとってうまくいった唯一の解決策は、glassfish リポジトリの settings.xml にミラーを追加することでした。

<mirror>
    <id>glassfish-mirror</id>
    <name>glassfish mirror</name>
    <url>http://maven.nuxeo.org/nexus/content/repositories/public-releases</url>
    <mirrorOf>glassfish-repository</mirrorOf>
</mirror>

ここで説明したように

于 2014-12-02T11:33:46.853 に答える
0

ダウンロードにすべての依存関係を含めることが賢明であると考えるのは幻想だと思います。もちろん、Mavenにそれらをダウンロードさせる方が良いです。どの愚かなレポや不要な膨満感の瓶が見つからないかを追跡するのに何時間も費やすのはとても楽しいです!他の誰も反対のことをあえて提案していないので、私はこれについて大多数を支持しなければならないことを知っています。

于 2013-01-12T18:46:10.100 に答える
0

追加するだけです:

<repository>
    <id>maven-central</id>
    <url>http://repo1.maven.org/maven2</url>
</repository>

私のPOM.xmlにはうまくいきました

于 2015-07-05T12:09:50.063 に答える