2010-12-10 5 views
13

I Version verwenden reicht in meinem Maven POM:wie kann ich Maven Version reicht von unter Verwendung von Snapshots stoppen

<version>[3.0.0,)</version> 

und für diesen speziellen Artefakt gibt es eine Version 3.0.0 im Repo und 3.0.1 -SCHNAPPSCHUSS. Wenn ich versuche, eine Veröffentlichung durchzuführen, schlägt es fehl, da die SNAPSHOT-Version verwendet wird.

habe ich versucht, diese Runde zu erhalten, indem meine Einstellungen ändern Datei, um die Verwendung von Snapshots dis-allow aber es immer noch nicht:

<repositories> 
    <repository> 
     <id>EFX Nexus Repository</id> 
     <url>myUrl</url> 
     <releases> 
      <enabled>true</enabled> 
     </releases> 
     <snapshots> 
      <enabled>false</enabled> 
     </snapshots> 
    </repository> 
</repositories> 

Dank

+5

Dieses Problem für eine lange Zeit hier diskutiert wurde: http: //jira.codehaus.org/browse/MNG-3092 ... Mein Rat für jetzt ist: Verwenden Sie keine Bereiche. – BrunoJCM

Antwort

0

Ich denke, dass eine SNAPSHOT Version des Artefakts hat Ihr lokales Maven-Repository (in ~/.m2) erreicht, bevor Sie Snapshots in <repositories> deaktiviert haben. Jetzt kann Maven keine Snapshots herunterladen, aber es kann sie immer noch aus dem lokalen Speicher verwenden.

Reinigen Sie das Verzeichnis ~/.m2 und versuchen Sie es erneut.

+0

Danke für die Antwort, aber ich hatte bereits alle lokalen Inhalte von meinem Repo gelöscht. – Roaders

+0

@Roaders Und Maven fährt fort, SNAPSHOT-Versionen aus dem Repository herunterzuladen (fremd, nicht lokal) ?? – yegor256

+0

Yup! Das habe ich seltsam gefunden! – Roaders

2

Dies ist grundlegende Maven-Problem.

Wenn Sie mehrere Befehle in einer Zeile auslösen..say mvn-Versionen: resolve-ranges clean install ... es wird SNAPSHOT abholen, wenn Build freigegeben wird.

Mit separater Ausführung des Befehls versuchen.

erste Lauf mvn Versionen: lösen Bereiche und dann clen installieren