web-dev-qa-db-fra.com

Quelle est la différence entre Nexus et Maven?

Quelle est la différence entre Nexus et Maven?

Qu'est-ce qu'un scénario de base d'utilisation seulement Maven? Qu'en est-il d'un scénario envisageant uniquement Nexus? Et à quoi ça ressemble quand je veux utiliser les deux?

109
ruhungry

Sonatype Nexus et Apache Maven sont deux logiciels qui fonctionnent souvent ensemble, mais effectuent des tâches très différentes. Nexus fournit un référentiel tandis que Maven utilise un référentiel pour créer un logiciel.

Voici une citation de " Qu'est-ce que Nexus? ":

Nexus gère les "artefacts" logiciels nécessaires au développement. Si vous développez des logiciels, vos versions peuvent télécharger des dépendances à partir de Nexus et publier des artefacts dans Nexus, créant ainsi un nouveau moyen de partager des artefacts au sein d'une organisation. Bien que le référentiel central ait toujours été très pratique pour les développeurs, vous ne devriez pas le toucher directement. Vous devriez être en train de remplacer Central par proxy avec Central et de gérer vos propres référentiels pour assurer la stabilité de votre organisation. Avec Nexus, vous pouvez contrôler complètement l’accès et le déploiement de chaque artefact de votre organisation à partir d’un seul emplacement.

Et voici une citation de " Maven et Nexus Pro, Made for Each Other " expliquant comment Maven utilise les référentiels:

Maven exploite le concept de référentiel en récupérant les artefacts nécessaires à la création d'une application et en déployant le résultat du processus de création dans un référentiel. Maven utilise le concept de référentiels structurés afin que les composants puissent être récupérés pour prendre en charge la construction. Ces composants ou dépendances incluent des bibliothèques, des frameworks, des conteneurs, etc. Maven peut identifier les composants dans des référentiels, comprendre leurs dépendances, extraire tout ce qui est nécessaire à la construction et déployer sa sortie dans les référentiels une fois la génération terminée.

Ainsi, lorsque vous souhaitez utiliser les deux, vous aurez un référentiel géré par Nexus et Maven aura accès à ce référentiel.

139
blalasaadri

Cela a une bonne description générale: https://gephi.wordpress.com/tag/maven/

Permettez-moi de faire quelques affirmations qui peuvent faire la différence:

  1. Nous avons migré notre base de code d'Ant vers Maven

  2. Toutes les bibliothèques tierces ont été téléchargées sur Nexus. Maven utilise Nexus comme source pour les bibliothèques.

  3. Les fonctionnalités de base d'un gestionnaire de référentiel comme Sonatype sont les suivantes:

    • Gérer les dépendances du projet,
    • Artefacts et métadonnées,
    • Proxy des référentiels externes
    • et le déploiement de fichiers binaires et de fichiers JAR empaquetés pour partager ces artefacts avec d'autres développeurs et utilisateurs finaux.
11
H M

Tout ce que j'ai compris de mon apprentissage et ce que je pense que c'est est ici. Je cite une partie d'un livre où j'ai appris ces choses. Nexus Repository Manager et Nexus Repository Manager OSS ont démarré en tant que gestionnaire de référentiel prenant en charge le format de référentiel Maven. Bien qu'il prenne en charge de nombreux autres formats de référentiel, le format de référentiel Maven reste le format le plus répandu et le mieux pris en charge pour les outils de génération et de provisioning s'exécutant sur la JVM et au-delà. Ce chapitre présente des exemples de configuration pour l’utilisation du gestionnaire de référentiel avec Apache Maven et un certain nombre d’autres outils. Les configurations tirent parti de la fusion de plusieurs référentiels et de leur exposition via un groupe de référentiels. Cette configuration est documentée dans le chapitre en plus de la configuration utilisée par des outils spécifiques.

Détails

2
Moon