it-swarm.com.de

Wie kann ich die SNAPSHOT-Version aus dem Maven SNAPSHOT-Repository herunterladen?

Ich habe also ein Projekt und mache regelmäßig Releases, um ohne Probleme maven zu werden. Ich möchte jetzt eine SNAPSHOT-Version dieses Projekts zur Verfügung stellen. Also mache ich 'mvn clean deploy'. Alles funktioniert wie Sie unten sehen können:

[INFO] Abrufen der vorherigen Build-Nummer aus Sonatype-Nexus-Snapshots Hochladen: https://oss.sonatype.org/content/repositories/snapshots/me/soliveirajr/menta-regex/0.9.6-SNAPSHOT/ menta-regex-0.9.6-20111010.153035-2.jar 5K hochgeladen (menta-regex-0.9.6-20111010.153035-2.jar)

Ich gehe zu meinem Sonatype-Manager und finde den Schnappschuss: enter image description hereenter image description here

Aber jetzt, wenn ich versuche, diese Momentaufnahme als Abhängigkeit von einem anderen Projekt in einem anderen Rechner zu verwenden, erhalte ich Folgendes:

<dependency>
  <groupId>me.soliveirajr</groupId>
  <artifactId>menta-regex</artifactId>
  <version>0.9.6-SNAPSHOT</version>
</dependency>

Fehlt:

1) me.soliveirajr: menta-regex: Glas: 0,9,6-SNAPSHOT

Versuchen Sie, die Datei manuell von der Projektwebsite herunterzuladen.

Dann installieren Sie es mit dem Befehl: mvn install: Installationsdatei -DgroupId = me.soliveirajr -DartifactId = menta-regex -Dversion = 0.9.6-SNAPSHOT -Dpackaging = jar -Dfile =/Pfad/in/Datei

Wenn Sie Ihr eigenes Repository hosten, können Sie die Datei alternativ dort bereitstellen: mvn deploy: deploy-file -DgroupId = me.soliveirajr -DartifactId = menta-regex -Dversion = 0.9.6-SNAPSHOT -Dpackaging = jar -Dfile =/Pfad/zu/file -Durl = [url] -DrepositoryId = [id ]

Wie zwinge ich maven, die SNAPSHOT-Version in mein lokales Repository (.m2) herunterzuladen?

30
chrisapotek

Fügen Sie dies einfach zu ~/.m2/settings.xml hinzu:

<profiles>
  <profile>
     <id>allow-snapshots</id>
        <activation><activeByDefault>true</activeByDefault></activation>
     <repositories>
       <repository>
         <id>snapshots-repo</id>
         <url>https://oss.sonatype.org/content/repositories/snapshots</url>
         <releases><enabled>false</enabled></releases>
         <snapshots><enabled>true</enabled></snapshots>
       </repository>
     </repositories>
   </profile>
</profiles>
50
JohnPristine

Der Vollständigkeit halber möchte ich hinzufügen, dass es auch möglich ist, durch Ändern des pom.xml Eines Projekts einfach hinzuzufügen

    <repository>
      <id>oss.sonatype.org-snapshot</id>
      <url>http://oss.sonatype.org/content/repositories/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
  </repositories>

zu Ihrer Repository-Liste.

Meiner Meinung nach ist dies eine bessere Lösung als das Ändern von ~/.m2/settings.xml. Die Datei pom.xml Steht auch anderen Projektteilnehmern über Git zur Verfügung und ermöglicht ihnen das Herunterladen der Schnappschüsse.

Quelle: diese Antwort

3
Thomas Kainrad

http://maven.40175.n5.nabble.com/How-to-enable-SNAPSHOT-td130614.html

Sind Sie für die Aktivierung von Momentaufnahmen konfiguriert?

2
Dave Newton

Sie können Momentaufnahmen in der Repository-Konfiguration (~/.m2/settings.xml) aktivieren:

<settings>
    <profiles>
        <profile>
          <repositories>
            <repository>
              <snapshots>                  <<<<<<<<<<<
                <enabled>true</enabled>    << ADD THIS
              </snapshots>                 <<<<<<<<<<<
  . . .
</settings>

Siehe maven.Apache.org/settings.html#Repositories für weitere Eigenschaften.

0
Bohdan