¿Cómo importa Nexus jar e importa por lotes el directorio de la biblioteca local de Maven?

prefacio

  • La versión basada en Nexus en este artículo es nexus-3.55.0-01
  • Este método es aplicable a Linux y Windows
  • Windows necesita instalar Git, use Git Bash para ejecutar

Cómo carga Nexus los paquetes dependientes

Hay muchas formas de cargar paquetes de dependencia en el servidor Nexus, que incluyen:

  1. Carga de un solo jar: cargue un solo jar en la página de la consola Nexus
  2. Compilación y carga del código fuente: use el comando de implementación de Maven en el proyecto de código fuente para publicar
  3. Use scripts para cargar los directorios de las bibliotecas locales de Maven en lotes

1. Cargue un solo jar: cargue un solo jar en la página de la consola Nexus

Para cargar el jar en la consola web de Nexus, primero debe iniciar sesión. Los pasos específicos son los siguientes:

  1. Después de iniciar sesión, haga clic en el botón "Cargar" en la barra de navegación izquierda
    inserte la descripción de la imagen aquí

  2. Seleccione la biblioteca que se cargará, seleccione maven-releases aquí, haga clic en la biblioteca que se cargará
    inserte la descripción de la imagen aquí

  3. Seleccione el archivo, ingrese el nombre del grupo, el nombre del componente, la versión, etc.

Aquí tomamos el controlador Oracle 12c Java ojdbc8 como ejemplo y completamos la información de la siguiente manera:
inserte la descripción de la imagen aquí

  1. Después de hacer clic en Finalizar, haga clic en el botón "Navegador" para ver el paquete cargado.

inserte la descripción de la imagen aquí

2. Use el comando de implementación de Maven para publicar en el proyecto de código fuente

Para publicar el proyecto en el servidor privado Nexus, debe configurar settings.xml de maven y pom.xml local.
settings.xml agrega la siguiente configuración:

    <server>
      <id>osxm-nexus</id>
      <username>admin</username>
      <password>123456</password>
    </server>

Pom.xml configura la dirección de la biblioteca publicada

  <distributionManagement>
		<repository>
			<id>osxm-nexus</id>
			<name>Osxm Nexus Releases Repository</name>
			<url>http://localhost:8081/repository/maven-snapshots/</url>
		</repository>
  </distributionManagement>

Nota: La identificación del servidor debe ser consistente con la identificación del repositorio.

Después de la implementación exitosa, los resultados publicados que se ven en la consola son los siguientes:
inserte la descripción de la imagen aquí

Para obtener detalles sobre la publicación de proyectos en servidores Nexus, consulte:
Cómo publicar proyectos en servidores privados Nexus en Maven

3. Use un script para cargar por lotes el directorio de la biblioteca local de Maven

Si es necesario importar todos los archivos jar de la biblioteca local de Maven a Nexus a la vez, es imposible utilizar un único método de importación.
Aquí, el script Bash se puede usar para importar todos los archivos jar en el directorio de la biblioteca local de Maven en Nexus a la vez. Si está en un entorno de Windows, puede instalar Git y usar Git Bash para ejecutar scripts sh.

Cree el archivo mvnimport.sh en la ruta de la biblioteca local de Maven, con el siguiente contenido:

#!/bin/bash
# copy and run this script to the root of the repository directory containing files
# this script attempts to exclude uploading itself explicitly so the script name is important
# Get command line params
while getopts ":r:u:p:" opt; do
   case $opt in
   	r) REPO_URL="$OPTARG"
   	;;
   	u) USERNAME="$OPTARG"
   	;;
   	p) PASSWORD="$OPTARG"
   	;;
   esac
done

find . -type f -not -path './mvnimport\.sh*' -not -path '*/\.*' -not -path '*/\^archetype\-catalog\.xml*' -not -path '*/\^maven\-metadata\-local*\.xml' -not -path '*/\^maven\-metadata\-deployment*\.xml' | sed "s|^\./||" | xargs -I '{}' curl -u "$USERNAME:$PASSWORD" -X PUT -v -T {} ${REPO_URL}/{} ;

Bash cambia a la ruta de la biblioteca local de Maven, similar a:

 cd /d/inssoftware/maven-3.9.2/repo

Ejecute el siguiente comando en este directorio:

./mvnimport.sh -u admin -p yourpassword -r http://localhost:8081/repository/maven-releases/

El script mvnimport.sh se puede descargar directamente desde la siguiente ruta: Script de importación por lotes del directorio de la biblioteca local de maven al servidor privado Nexus



Supongo que te gusta

Origin blog.csdn.net/oscar999/article/details/131349696
Recomendado
Clasificación