Was ist der Unterschied zwischen Nexus und Maven?


133

Was ist der Unterschied zwischen Nexus und Maven ?

Was ist ein grundlegendes Nutzungsszenario nur für Maven ? Was ist mit einem Szenario, das nur Nexus berücksichtigt ? Und wie sieht es aus, wenn ich beide verwenden möchte?

Antworten:


156

Sonatype Nexus und Apache Maven sind zwei Softwareteile, die häufig zusammenarbeiten, aber sehr unterschiedliche Aufgaben übernehmen. Nexus stellt ein Repository bereit, während Maven ein Repository zum Erstellen von Software verwendet.

Hier ist ein Zitat aus " Was ist Nexus? ":

Nexus verwaltet Software- "Artefakte", die für die Entwicklung erforderlich sind. Wenn Sie Software entwickeln, können Ihre Builds Abhängigkeiten von Nexus herunterladen und Artefakte in Nexus veröffentlichen, wodurch eine neue Möglichkeit zum Teilen von Artefakten innerhalb einer Organisation geschaffen wird. Während das zentrale Repository für Entwickler immer eine große Annehmlichkeit war, sollten Sie es nicht direkt treffen. Sie sollten Central mit Nexus vertreten und Ihre eigenen Repositorys verwalten, um die Stabilität in Ihrem Unternehmen sicherzustellen. Mit Nexus können Sie den Zugriff auf und die Bereitstellung aller Artefakte in Ihrem Unternehmen von einem einzigen Standort aus vollständig steuern.

Und hier ist ein Zitat aus " Maven und Nexus Pro, für einander gemacht ", das erklärt, wie Maven Repositories verwendet:

Maven nutzt das Konzept eines Repositorys, indem er die zum Erstellen einer Anwendung erforderlichen Artefakte abruft und das Ergebnis des Erstellungsprozesses in einem Repository bereitstellt. Maven verwendet das Konzept strukturierter Repositorys, damit Komponenten abgerufen werden können, um den Build zu unterstützen. Zu diesen Komponenten oder Abhängigkeiten gehören Bibliotheken, Frameworks, Container usw. Maven kann Komponenten in Repositorys identifizieren, ihre Abhängigkeiten verstehen, alles abrufen, was für einen erfolgreichen Build erforderlich ist, und die Ausgabe nach Abschluss des Builds wieder in Repositorys bereitstellen.

Wenn Sie also beide verwenden möchten, haben Sie ein von Nexus verwaltetes Repository und Maven greift auf dieses Repository zu.


14

Dies hat eine gute allgemeine Beschreibung: https://gephi.wordpress.com/tag/maven/

Lassen Sie mich einige Aussagen machen, die den Unterschied in den Fokus rücken können:

  1. Wir haben unsere Codebasis von Ant nach Maven migriert

  2. Alle Librairies von Drittanbietern wurden auf Nexus hochgeladen. Maven verwendet Nexus als Quelle für Bibliotheken.

  3. Grundlegende Funktionen eines Repository-Managers wie Sonatype sind:

    • Verwalten von Projektabhängigkeiten,
    • Artefakte & Metadaten,
    • Proxy für externe Repositorys
    • und Bereitstellung von gepackten Binärdateien und JARs, um diese Artefakte mit anderen Entwicklern und Endbenutzern zu teilen.

2

Was auch immer ich aus meinem Lernen verstanden habe und was ich denke, es ist hier. Ich zitiere einen Teil aus einem Buch, in dem ich diese Dinge gelernt habe. Nexus Repository Manager und Nexus Repository Manager OSS wurden als Repository Manager gestartet, der das Maven-Repository-Format unterstützt. Obwohl es jetzt viele andere Repository-Formate unterstützt, ist das Maven-Repository-Format immer noch das am häufigsten verwendete und am besten unterstützte Format für Build- und Provisioning-Tools, die auf der JVM und darüber hinaus ausgeführt werden. Dieses Kapitel zeigt Beispielkonfigurationen für die Verwendung des Repository-Managers mit Apache Maven und einer Reihe anderer Tools. Die Setups nutzen den Vorteil, dass viele Repositorys zusammengeführt und über eine Repository-Gruppe verfügbar gemacht werden. Das Einrichten ist in diesem Kapitel zusätzlich zu der von bestimmten Tools verwendeten Konfiguration dokumentiert.

Einzelheiten

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.