Entrepôt privé Maven - Nexus3
- Pendant le travail, il peut être nécessaire d'encapsuler certaines bibliothèques d'outils courantes
- Cependant, le code des sociétés est plus sensible et ne peut généralement pas être ouvert aux entrepôts publics
- À l'heure actuelle, vous pouvez utiliser Nexus3 pour créer un entrepôt privé à usage interne dans l'entreprise
- Version vidéo : BiliBili
Étapes de démonstration
- Créer un service Nexus3 à l'aide de Docker
- Créer un projet et un dépôt push
- Modifier la configuration du fichier pom.xml du projet
- Modifier la configuration du logiciel Maven
- Utilisez la commande "mvn deploy" pour pousser vers l'entrepôt
- Créer un projet et référencer le projet de l'étape précédente
- Modifier la configuration du logiciel Maven
- Redémarrez l'IDE
- Utilisez la commande "mvn install" pour installer les dépendances
1. Utilisez docker pour créer le service nexus3
- Utiliser docker pour créer un conteneur nexus3
- Accès : http://127.0.0.1:8081
- Il consomme plus de ressources et la vitesse de démarrage est plus lente. S'il indique que la page n'est pas accessible, attendez un peu plus longtemps (cela peut prendre trois à cinq minutes pour une racaille informatique, comme la mienne)
docker run -d -p 8081:8081 --name nexus sonatype/nexus3
复制代码
-
obtenir le mot de passe nexus3
- Cliquez sur "Connexion" dans le coin supérieur droit de la page et suivez les invites dans la fenêtre contextuelle pour trouver le mot de passe par défaut
- Compte par défaut : administrateur
- Mot de passe par défaut : "/nexus-data/admin.password" à l'intérieur du conteneur
- Vous serez invité à réinitialiser le mot de passe, à modifier le mot de passe dont vous vous souvenez (ou à utiliser le mot de passe par défaut) et vous devrez l'utiliser plus tard dans la configuration.
- Cliquez sur "Connexion" dans le coin supérieur droit de la page et suivez les invites dans la fenêtre contextuelle pour trouver le mot de passe par défaut
-
Comme indiqué dans la figure ci-dessous, copiez l'adresse de l'entrepôt "maven-releases"/"maven-snapshots"
- nexus-public est un groupe d'entrepôts, qui contient les entrepôts suivants par défaut
- maven-releases : bibliothèque de versions locales
- maven-snapshots : bibliothèque locale d'instantanés
- maven-central : bibliothèque maven centrale de proxy, peut être remplacée par un proxy domestique, tel qu'Alibaba Cloud ( maven.aliyun.com/repository/… )
2. Créez un projet et poussez l'entrepôt
Modifier la configuration du fichier pom.xml du projet
- Transformez directement le projet Maven (ou créez un nouveau projet Maven)
- Exécutez "mvn package" pour empaqueter les projets jar
- Ajoutez les informations d'adresse nexus3 dans pom.xml comme suit
- Même niveau que les dépendances/build
<dependencies>...略</dependencies>
<build>...略</build>
<distributionManagement>
<repository>
<id>maven-releases</id>
<name>maven-releases</name>
<url>${这里填写从nexus页面上复制的maven-releases的url}</url>
</repository>
<snapshotRepository>
<id>maven-snapshots</id>
<name>maven-snapshots</name>
<url>${这里填写从nexus页面上复制的maven-snapshots的url}</url>
</snapshotRepository>
</distributionManagement>
复制代码
- pousser le paquet
- Exécutez "mvn deoloy"
- À ce moment, une erreur "...status : 401 Unauthorized" est signalée, indiquant que la configuration du projet est correcte
Modifier la configuration du logiciel Maven
- Ouvrez ${répertoire racine maven}/conf/settings.xml
- Ajouter le mot de passe du compte Nexus
- L'id doit être cohérent avec celui configuré dans le projet pom.xml
<servers>
<server>
<id>maven-releases</id>
<username>admin</username>
<password>${密码}</password>
</server>
<server>
<id>maven-snapshots</id>
<username>admin</username>
<password>${密码}</password>
</server>
</servers>
复制代码
- Exécuter à nouveau "mvn deploy" ne signalera pas d'erreur
- Actualisez la page Nexus pour voir le package téléchargé
- Version du projet sans "-SNAPSHOT" dans le répertoire "maven-releases"
- Sinon dans le répertoire "maven-releases"
- Actualisez la page Nexus pour voir le package téléchargé
3. Créez un projet et référencez le code du projet de l'étape précédente
Modifier la configuration du logiciel Maven
- Ouvrez ${répertoire racine maven}/conf/settings.xml
- Activer la mise en miroir, commenter s'il existe d'autres mises en miroir
- Redémarrez l'IDE, ajoutez une dépendance dans pom.xml comme une bibliothèque en ligne à utiliser
<mirror>
<id>nexus-public</id>
<mirrorOf>*</mirrorOf>
<name>私有仓库</name>
<url>${这里填写从nexus页面上复制的maven-public的url}</url>
</mirror>
复制代码