Maven artifact sources / javadoc download

Artifact sources resolution

Um mit Maven alle sourcen der verwendeten direkten und transitiven dependencies aufzulösen, wird folgendender plugin Aufruf verwendet:

[cc lang=’text’ line_numbers=’false’]mvn dependency:sources[/cc]

Nun muss man wissen, dass nach dem Aufruf im target Verzeichnis des entsprechenden Projektes ein cache-Ordner “dependency-maven-plugin-markers” erstellt wird. Dies verhindert ein erneutes auflösen der sourcen beim selbigen Aufruf.

Mit einem vorangehenden clean kann das dependency Plugin zu einem erneuten lookup gezwungen werden.

[cc lang=’text’ line_numbers=’false’]mvn clean dependency:sources[/cc]

Unter welchen Bedingungen der cache des plugins geleert wird ist mir nicht bekannt und aus der Dokumentation leider nicht ersichtlich.

Die oben gezeigten Befehle funktionieren nur, wenn der default classifier “sources” für die source artifacts verwendet wurde wie zum Beispiel hier: “junit-4.8.1-sources.jar”.

Einen ähnlichen Effekt kann man erzielen mit:

[cc lang=’text’ line_numbers=’false’]mvn dependency:resolve -Dclassifier=sources[/cc]

Hier wird allerdings kein cache im target abgelegt, die sourcen werden direkt ins lokale Repository geladen, ansonsten ist das Resultat dasselbe.

Artifact javadoc resolution

Mit dem folgeden Befehl werden alle javadocs aufgelöst.

[cc lang=’text’ line_numbers=’false’]mvn dependency:resolve -Dclassifier=javadoc[/cc]

Wieder unter der Vorraussetzung, dass der standart classifier -javadoc nicht verändert wurde.

Weiterführende Links

http://maven.apache.org/plugins/maven-dependency-plugin/sources-mojo.html

Leave a reply

Your email address will not be published. Required fields are marked *

© 2010 - 2015 Christian Moser - All data and information provided on this site is for informational purposes only. The techtalk blog or the author makes no representations as to accuracy, completeness, currentness, suitability, or validity of any information on this site & will not be liable for any errors, omissions, or delays in this information or any losses, injuries, or damages arising from its display or use. All information is provided on an as-is basis.