example - ¿Cómo descargo un artefacto Maven en la línea de comandos sin usar la dependencia: get o maven-download-plugin?
maven-compiler-plugin (4)
Me gustaría descargar un artefacto y sus dependencias en la línea de comando. Es decir
mvn [some plugin]:[goal] -DartifactId=[artifactId] -DgroupId=[groupId] -Dversion=[version]
Intenté la dependencia mvn: get, pero parece que esto requiere una lista de repositorios remotos. Quiero que mvn use lo que ya está especificado en settings.xml
También probé el maven-download-plugin, pero parece que no funciona bien (intentó descargar xerces-impl como una dependencia transitiva de hormiga y no pudo resolverlo. Ni xerces-impl ni ant son dependencias de mi artefacto )
Tu ayuda será apreciada.
Intenta usar la última versión de la dependencia: get, me funciona
mvn org.apache.maven.plugins:maven-dependency-plugin:2.4:get -DartifactId=[artifactId] -DgroupId=[groupId] -Dversion=[version]
funciona para mi
La solución más simple sería crear un pom simple con las dependencias apropiadas y hacer un paquete de mvn clean en ese mini proyecto ...
El objetivo de copy
es más apropiado aquí y le permite especificar también un directorio de salida (que está obsoleto en el objetivo get
):
mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:copy -Dartifact=groupId:artifactId:version[:packaging][:classifier] -DoutputDirectory=[target] -Dmdep.useBaseVersion=true
mdep.useBaseVersion=true
eliminará las marcas de tiempo de las compilaciones de instantáneas.
Ejemplo para descargar la versión 6.9.4 de TestNG a su local ~ / .m2 / repository (usa maven-dependency-plugin: get):
mvn org.apache.maven.plugins:maven-dependency-plugin:RELEASE:get /
-Dartifact=org.testng:testng:6.9.4:jar
Ejemplo para descargar la versión 4.11 de JUnit a su directorio de trabajo actual (utiliza maven-dependency-plugin: copy):
mvn org.apache.maven.plugins:maven-dependency-plugin:RELEASE:copy /
-Dartifact=junit:junit:4.11:jar