2012-07-12 28 views
5

Tengo una carga de archivos JAR de terceros (alrededor de 40 JAR diferentes de varios SDK que estoy usando) sentados en una carpeta en mi disco duro. Quiero declarar esos JAR como dependencias en mis futuros proyectos maven.Despliegue de múltiples JAR de terceros a global (interno) Maven nexus

No puedo obtener esos archivos JAR del repositorio de maven global en todo el mundo como podría, por ejemplo, Log4J, JUnit, Velocity, etc., ya que no están disponibles allí.

¿Cómo obtengo estos archivos JAR de mi carpeta local en el repositorio maven global (pero interno) de mi empresa (Nexus)? ¿Cuáles serían los pasos necesarios? La mejor solución sería programática, si eso fuera posible.

Estoy confundido de que no pude encontrar ninguna solución a mi problema al usar Google, porque me imagino que este es un problema muy extendido. Entonces tal vez estoy pensando en una dirección equivocada.

¡Muchas gracias!

Respuesta

9

Puede instalar las bibliotecas en su repositorio local con el maven-install-plugin (install-file objetivo - vea example).

Puede implementar las bibliotecas en su repositorio remoto (Nexus) con el objetivo maven-deploy-plugin (deploy-file - vea example).

También puede usar la aplicación web Nexus para cargar las bibliotecas en nexus (consulte Nexus Book - Uploading Artifacts).

+0

Gracias por su respuesta, @FrVaBe. ¿Hay alguna forma de hacer esto desde Java usando cualquiera de las API de Maven? Intenté usar el Invoker, pero de acuerdo con [la documentación] (http://maven.apache.org/plugins/maven-invoker-plugin/), el objetivo de implementación no es compatible. – HombreFab

+0

@HombreFab No tengo experiencia en la ejecución programática de tareas maven, pero debería ser posible configurar maven-deploy-plugin en una sección pom.build.plugin y activar el invocador: objetivo de instalación. En su caso, el método automatizado más simple para mí parece ser un script por lotes que ejecuta los diferentes comandos 'mvn deploy: deploy-file'. – FrVaBe

+1

Gracias. Voy a iterar sobre mis archivos JAR en Java y ejecutar el 'mvn deploy: deploy-file' al [llamar a la línea de comandos] (http://www.linglom.com/2007/06/06/how-to-run -command-line-or-execute-external-application-from-java /) desde java directamente para cada archivo. Eso lo hará. – HombreFab

Cuestiones relacionadas