Frage Wie stelle ich SNAPSHOT mit Quellen und JavaDoc bereit?


Ich möchte Quellen und Javadocs mit meinen Snapshots bereitstellen. Das bedeutet, dass ich den folgenden Befehl automatisieren möchte:

mvn clean source:jar javadoc:jar deploy

Nur ausführen:

mvn clean deploy

Ich möchte nicht, dass javadoc / sources generation ausgeführt wird install Phase (d. h. lokale Builds).

Ich weiß, dass Source / Javadoc Plugins mit der Ausführung des release Plugin, aber ich kann nicht herausfinden, wie man es mit den Snapshots Releases verbindet.


76
2018-01-18 15:08


Ursprung


Antworten:


<build>
  <plugins> 
    <plugin>
      <artifactId>maven-source-plugin</artifactId>
      <executions>
        <execution>
          <id>attach-sources</id>
          <phase>deploy</phase>
          <goals><goal>jar-no-fork</goal></goals> 
        </execution>
      </executions>
    </plugin>
    <plugin> 
      <artifactId>maven-javadoc-plugin</artifactId> 
      <executions> 
        <execution> 
          <id>attach-javadocs</id>
          <phase>deploy</phase>
          <goals><goal>jar</goal></goals> 
        </execution> 
      </executions> 
    </plugin>
    <plugin> 
      <!-- explicitly define maven-deploy-plugin after other to force exec order -->
      <artifactId>maven-deploy-plugin</artifactId> 
      <executions> 
        <execution> 
          <id>deploy</id>
          <phase>deploy</phase>
          <goals><goal>deploy</goal></goals> 
        </execution> 
      </executions> 
    </plugin>
  </plugins> 
</build>

Sehen Sonatypes OSS-Eltern-POM für ein komplettes Beispiel.


71
2018-01-18 15:13



Nur um eine Alternative hinzuzufügen, bei der Sie nicht mit der Plugin-Konfiguration meckern müssen:

mvn -DperformRelease=true [goals]

Kredit geht an McBeelen aus http://sea36.blogspot.com/2009/02/attaching-javadocs-and-sources-to-maven.html?showComment=1314177874102#c6853460758692768998


44
2018-01-26 15:34



Der Artikel, auf den sich Dan bezieht, erwähnt auch einen anderen Ansatz, der funktioniert, ohne Poms zu modifizieren UND wird nicht so bald verschwinden:

mvn sauber Javadoc: Glas Quelle: Glas Installieren

Was gut mit Maven 3+ funktioniert, zusammen mit ...

mvn sauber Javadoc: Glas Quelle: Glas bereitstellen

Was ich von Jenkins getestet habe, stellt auf Nexus bereit.

Dieser Ansatz war gut, weil ich nur einige Jenkins-Jobs ändern musste und mich nicht mit meinen Poms anlegen musste.


23
2018-06-13 20:37