Sie könnten die maven dependency plugin verwenden, die ein nettes dependency:get
Ziel seit Version 2.1 hat. Keine Notwendigkeit für einen Pom, alles passiert in der Befehlszeile.
Um sicherzustellen, dass das dependency:get
Ziel zu finden, müssen Sie Maven explizit sagen, die Version 2.1, dh Sie können den vollständigen Namen des Plugins verwenden müssen, verwenden, einschließlich der Version:
mvn org.apache.maven.plugins:maven-dependency-plugin:2.1:get \
-DrepoUrl=url \
-Dartifact=groupId:artifactId:version
UPDATE: Mit älteren Versionen von Maven (vor 2.1) ist es möglich, dependency:get
normal auszuführen (ohne den voll qualifizierten Namen und die Version zu verwenden), indem Sie Ihre Kopie von maven zwingen, eine bestimmte Version eines Plugins zu verwenden.
Dies kann wie folgt geschehen:
1. die folgende Zeile innerhalb des <settings>
Element Ihrer ~/.m2/settings.xml
Datei hinzufügen:
<usePluginRegistry>true</usePluginRegistry>
2. die Datei ~/.m2/plugin-registry.xml
mit folgendem Inhalt hinzufügen :
<?xml version="1.0" encoding="UTF-8"?>
<pluginRegistry xsi:schemaLocation="http://maven.apache.org/PLUGIN_REGISTRY/1.0.0 http://maven.apache.org/xsd/plugin-registry-1.0.0.xsd"
xmlns="http://maven.apache.org/PLUGIN_REGISTRY/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<useVersion>2.1</useVersion>
<rejectedVersions/>
</plugin>
</plugins>
</pluginRegistry>
Aber das scheint mit maven 2.1/2.2 nicht mehr zu funktionieren. Tatsächlich, nach der Introduction to the Plugin Registry, Features der plugin-registry.xml
wurden neu gestaltet (für Portabilität) und die Plugin-Registrierung ist derzeit in einem halb ruhenden Zustand innerhalb Maven 2. Also ich denke, wir müssen den langen Namen für jetzt verwenden (bei Verwendung des Plugins ohne Pom, was die Idee hinter dependency:get
ist).
Achten Sie darauf, dass das Plugin "RepoUrl" möchte, obwohl die Dokumentation "repositoryUrl" lautet. Es kann dich verrückt machen, wie es mir angetan hat! – zakmck
die Dokumentation (http: //maven.apache.org/plugins/maven-dependency-plugin/get-mojo.html) zeigt sowohl XML-Parameter ( ... repositoryUrl>) als auch Befehlszeilen-Benutzereigenschaften (mvn ... -DrepoUrl = ".. . "). Dieses spezielle Beispiel ist veraltet, also keine Sorgen; jetzt ist es jetzt einheitlich remoteRepositories (in beiden Verwendungen); Beachten Sie jedoch, dass der Parameter "destination" die Benutzereigenschaft "-Ddest = ..." ist. zB => mvn org.apache.maven.plugins: maven-dependency-plugin: 2.5.1: get -DremoteRepositories = repo.maven.apache.org -Dartifact = org.apache.ant: ant: 1.8.1 -DDest = ant-1.8.1.jar (Ergebnis: ant-1.8.1.jar im aktuellen Verzeichnis) –
michael