2012-07-27 13 views
11

Ich benutze eine etwas ältere Version (1.5) von com.sun.jersey-server/json/client und es muss diese Version sein, also bitte nicht vorschlagen, eine neuere Version zu verwenden.Maven verwendet falsches Repository zum Herunterladen

In meinem pom.xml ich bin Referenzierung es über

<dependency> 
     <groupId>com.sun.jersey</groupId> 
     <artifactId>jersey-server</artifactId> 
     <version>${jersey.version}</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> 

$ {} jersey.version sein 1,5

Wenn i wan't es zu kompilieren ich diese Fehler erhalten:

[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 

So googelte einige Zeit und das Internet sagte, ich soll das Repository zu meinem Pom hinzufügen, so Maven wird zuerst dort aussehen.

<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> 

Aber das hat nichts getan. Ich habe meinen Jersy-Ordner in meinem .m2-Ordner gelöscht und versucht, mvn clean erneut zu kompilieren und versucht es immer noch, wenn von diesem glassfish-404-Server.

Wer weiß, was ich ändern muss, damit es richtig herunterladen?

Antwort

13

Try-Repository des Maven zentral vor anderen hinzuzufügen:

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

bessere Option des Nexus-Server würde die Einrichtung und in pom-Dateien von Repository-Abschnitte loszuwerden: http://www.sonatype.com/people/2009/02/why-putting-repositories-in-your-poms-is-a-bad-idea/

+0

Es ist nicht für mich arbeiten. Immer noch derselbe Fehler. –

4

Wenn Sie sich die Pom, die Referenzen von Jersey ist, betrachten, enthält es einige Repo von 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> 

Wenn die transitiven Abhängigkeiten aufgelöst werden versucht, sendet der Server eine Umleitungsantwort, damit Sie Prüfsumme Fehler im Protokoll angezeigt, die Sie zur Verfügung gestellt.

versuchen, dies in Browser: http://maven.glassfish.org/content/groups/glassfish/com/sun/jersey/jersey-project/1.5/jersey-project-1.5.pom

Ich weiß, dass dies nicht Lösung für Ihr Problem ist (und zu umständlich), aber können Sie auf mvn install die Abhängigkeiten für jerser-Server 1.5 lokal benötigt versuchen so, dass es nicht der Fall ist versuchen Sie diese herunterzuladen?

0

Ich denke, es wäre Fantasie zu denken, dass die Einbeziehung aller Abhängigkeiten in den Download sinnvoll wäre. Natürlich ist es besser, sie herunterzuladen. Es macht so viel Spaß Stunden und Stunden damit zu verbringen herauszufinden, welches blöde Repo oder unnötiges Bloat-Glas nicht gefunden werden kann! Ich weiß, dass ich mich auf diesem Gebiet mit der Mehrheit abfinden muss, denn niemand wagt es, etwas Gegenteiliges vorzuschlagen.

3

Die einzige Lösung, die für mich funktionierte, war das Hinzufügen eines Spiegels in den Einstellungen.xml für das Repository Glassfish:

<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> 

Wie erklärt here

+0

Diese Lösung funktionierte für mich. –

0

gerade hinzufügen:

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

Zu meiner pom.xml fein gearbeitet

Verwandte Themen