回答:
Sonatype NexusとApache Mavenは2つのソフトウェアであり、一緒に機能することがよくありますが、それらの役割は非常に異なります。Nexusはリポジトリを提供し、Mavenはリポジトリを使用してソフトウェアを構築します。
Nexusは、開発に必要なソフトウェア「アーティファクト」を管理します。ソフトウェアを開発する場合、ビルドはNexusから依存関係をダウンロードし、アーティファクトをNexusに公開して、組織内でアーティファクトを共有する新しい方法を作成できます。Centralリポジトリは常に開発者にとって非常に便利なものでしたが、直接アクセスするべきではありません。組織内で安定性を確保するために、NexusでCentralをプロキシし、独自のリポジトリを維持する必要があります。Nexusを使用すると、組織内のすべてのアーティファクトへのアクセスと展開を1つの場所から完全に制御できます。
そして、 Mavenがリポジトリを使用する方法を説明する「MavenとNexus Pro、Made forお互いに」からの引用は次のとおりです。
Mavenは、アプリケーションのビルドに必要なアーティファクトを取得し、ビルドプロセスの結果をリポジトリにデプロイすることにより、リポジトリの概念を活用します。Mavenは構造化リポジトリの概念を使用しているため、コンポーネントを取得してビルドをサポートできます。これらのコンポーネントまたは依存関係には、ライブラリ、フレームワーク、コンテナーなどが含まれます。Mavenは、リポジトリー内のコンポーネントを識別し、それらの依存関係を理解し、正常なビルドに必要なすべてを取得し、ビルドが完了したときにその出力をリポジトリーにデプロイします。
したがって、両方を使用する場合は、Nexusによって管理されるリポジトリがあり、Mavenがこのリポジトリにアクセスします。
これには良い一般的な説明があります:https : //gephi.wordpress.com/tag/maven/
その違いに焦点を当てることができるいくつかのステートメントを述べさせてください:
コードベースをAntからMavenに移行しました
すべてのサードパーティライブラリがNexusにアップロードされました。MavenはNexusをライブラリのソースとして使用しています。
Sonatypeなどのリポジトリマネージャーの基本的な機能は次のとおりです。
私が学んだことから何を理解し、それが何だと私が思うことはここにあります。私はこのことを学んだ本の一部を引用しています。Nexus Repository ManagerとNexus Repository Manager OSSは、Mavenリポジトリ形式をサポートするリポジトリマネージャとして開始されました。現在、他の多くのリポジトリ形式をサポートしていますが、Mavenリポジトリ形式は、JVM以降で実行されるビルドおよびプロビジョニングツールで最も一般的で十分にサポートされている形式です。この章では、Apache Mavenおよびその他のいくつかのツールでリポジトリマネージャーを使用するための設定例を示します。セットアップでは、多くのリポジトリをマージし、リポジトリグループを介してそれらを公開します。この設定は、特定のツールで使用される構成に加えて、この章で説明されています。