ゼロから始める: Nexus プライベート サーバーの構築と Maven ウェアハウスの構成に関する完全ガイド

 I.はじめに

Nexus を使用してプライベート サーバーを構築することには多くの利点があります。その中で最も重要なのは、コンポーネントのアクセスとデプロイメントを制御できることです。Nexus プライベート サーバーがない場合、必要なすべてのコンポーネントは Maven の中央ウェアハウスとサードパーティの Maven ウェアハウスを通じてローカルにダウンロードする必要があり、チームの全員が Maven ウェアハウスからコンポーネントを繰り返しダウンロードすることになります。また、外部ネットワークの帯域も無駄になり、ネットワーク速度が遅いとプロジェクトの進行にも影響します。Nexusを利用してプライベートサーバーを構築した後は、一度プライベートサーバーにダウンロードするだけで、チーム全体で利用できるので効率が大幅に向上します。

さらに、Nexus には、フットプリントが小さい、ExtJs ベースの操作インターフェイスを備えている、完全な Restlet ベースの REST API を使用してプロキシ ウェアハウス、ホスト ウェアハウス、およびウェアハウス グループをサポートしている、ファイル システムに基づいているなど、他にも多くの利点があります。データベースに依存する必要があり、倉庫管理をサポート、コンポーネント検索をサポート、インターフェイス上でコンポーネントのアップロードをサポートなど。

2. Nexusプライベートサーバー構築

2.1. Nexus の概要

Sonatype の製品である Nexus は、内部倉庫のメンテナンスと外部倉庫へのアクセスを大幅に簡素化する強力な倉庫マネージャーです。これは主に、チーム内で依存関係を共有して使用するための社内 Maven プライベート サーバーを構築するために使用されます。

Nexus プライベート サーバーには、次のような多くの利点があります。

  1. ビルドを高速化します。
  2. 帯域幅を節約します。
  3. 中央の Maven リポジトリの帯域幅を節約します。
  4. 安定しています (中央サーバーに障害が発生した場合に状況に対処するため)。
  5. 管理と監査。
  6. サードパーティのコンポーネントを展開する機能。
  7. ローカルの内部倉庫を確立できます。
  8. パブリックリポジトリを構築できます。

2.2. Nexus をダウンロードしてインストールする

Nexus公式サイト https://help.sonatype.com/repomanager3/product-information/download

お使いのシステムに応じて、対応するバージョンをダウンロードしてください 

2.2.1. Nexus の起動

インストール パッケージ パスを見つけます。
ファイル ディレクトリ\nexus-3.20.1-01\bin

 開いている黒いウィンドウのコマンド操作で「nexus.exe /run」と入力します。

 次の単語が表示されれば、テーブルは正常に開始されます。

2.2.2. ネクサスへのアクセス

Nexus アクセス アドレスがわからない場合は、大丈夫、教えてあげるよ。
ファイル ディレクトリ\nexus-3.20.1-01\etc\nexus-default.properties は
ここにある nexus 設定ファイルです

application-port=access Nexus ポート番号 (デフォルトは 8081)
application-host=access Nexus IP アドレス (デフォルトは localhost ローカル IP)
なので、アクセス パスは http://localhost:8081になります。 

次の画像が表示されれば、起動が成功したことを意味します

2.2.3. ログインネクサス

アカウントは admin、パスワードはファイル ディレクトリ\nexus-3.20.1-01\etc\sonatype-work\nexus3\admin.password です。

ヒント: ここでパスワードを変更したため、admin.password は表示されなくなります (一時的なものであるため)。

ファイルを開き、パスワードを直接コピーしてログインします。ログインが成功すると、再度パスワードの入力を求められます。これがパスワードの変更手順です。今後、このパスワードを使用して Nexus にログインします。 。

3. Maven ウェアハウスの構成

3.1. Maven の概要

Maven は Java ベースのプロジェクト管理ツール (POM プロジェクト オブジェクト モデル) であり、開発者が Java プロジェクトの構築、テスト、デプロイメントを自動化するのに役立ちます。Maven は、中央ウェアハウスを通じてプロジェクトの依存関係を管理し、必要な依存関係ライブラリを自動的にダウンロードし、プロジェクトのビルド スクリプトを自動的に生成できます。Maven を使用すると、Java プロジェクトの構築および管理プロセスが大幅に簡素化され、開発効率とプロジェクトの品質が向上します。

ヒント: 自動ビルドとは何ですか?

自動ビルドとは、ツールまたはスクリプトを使用してプロジェクトのビルド プロセスを自動化する方法を指します。ソフトウェア開発におけるビルドとは、コンパイル、リンク、パッケージ化などを含む、ソース コードを実行可能なソフトウェアに変換するプロセスです。従来、ビルド プロセスは手動で実行され、開発者は一連のコマンドまたはアクションを段階的に実行してビルドを完了していました。自動ビルドでは、ビルド ツールまたはスクリプトを使用してこれらの操作を自動化し、手動操作の面倒さやエラーを軽減し、ビルドの効率と一貫性を向上させます。

自動ビルドでは次の機能を実現できます。

  1. ソース コードをコンパイルする:ソース コードを実行可能なバイナリに変換します。
  2. 依存関係の管理:プロジェクトに必要な依存ライブラリを自動的にダウンロードして管理します。
  3. テスト:単体テストや結合テストなどのテストプロセスを自動的に実行します。
  4. パッケージ化:コンパイルされたコードを展開可能なパッケージにパッケージ化します。
  5. ドキュメントの生成:プロジェクトのドキュメントを自動的に生成します。
  6. デプロイメント:ビルドされたパッケージをターゲット環境に自動的にデプロイします。

ビルドを自動化することで、開発者は時間と労力を節約し、人的エラーを減らし、ソフトウェア開発の効率と品質を向上させることができます。

3.2. Maven をダウンロードしてインストールする

詳細については、私が作成した Maven のインストールと構成のチュートリアルに移動してください。

Maven のインストールと Eclipse の構成と Maven プロジェクトの作成チュートリアル [史上最も詳細な] http://t.csdn.cn/NbNDK

4 番目に、Nexus を Maven ウェアハウスとして使用する

4.1. Jar をパッケージ化してアップロードする

① Maven インストールディレクトリの
ファイルパス/maven/バージョン番号/libexec/conf/settings.xmlを見つけます。

 ②サーバーノード

        <server><!-- 发布版本-->
             <id>nexus</id> <!-- 随意填写,但项目中repository的id得与这里一致-->
              <username>admin</username> <!-- 账户-->
           <password>admin123</password>  <!-- 密码-->
        </server>
        <server><!-- 发布版本-->
      	   <id>nexus-releases</id> <!-- 随意填写,但项目中repository的id得与这里一致-->
       	   <username>admin</username> <!-- 账户-->
           <password>admin123</password>  <!-- 密码-->
        </server>
        <server><!-- 发布版本-->
             <id>nexus-snapshots</id> <!-- 随意填写,但项目中repository的id得与这里一致-->
              <username>admin</username> <!-- 账户-->
           <password>admin123</password>  <!-- 密码-->
        </server>

 ③ミラーノード

    <mirror>
      <id>nexus</id>
      <!--表示访问哪些工厂时需要使用镜像-->
      <mirrorOf>*</mirrorOf>
      <url>http://localhost:8081/repository/maven-public/</url>
    </mirror>

Nexus Web サイトにアクセスして URL をコピーする必要があります

 ここにAlibaba Cloudのミラーイメージを追加するのが最善です

 <!-- 阿里云镜像-->
<mirror>
  <id>alimaven</id>
  <name>aliyun maven</name>
  <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
  <mirrorOf>central</mirrorOf>        
</mirror>
<mirror>  
 <id>alimaven</id>  
 <mirrorOf>central</mirrorOf>  
 <name>aliyun maven</name>  
 <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>  
</mirror> 

ここではアイデアを例として取り上げますが、他の開発ツールも同様です

④pom.xmlはNexusウェアハウスのアドレス情報を設定します

  <!-- 本地nexus私有库-->
  <distributionManagement>
    <snapshotRepository>
      <id>snapshots</id>
      <name>snapshots</name>
      <url>http://localhost:8081/repository/maven-snapshots/</url>
    </snapshotRepository>
    <repository>
      <id>releases</id>
      <name>release</name>
      <url>http://localhost:8081/repository/maven-releases/</url>
    </repository>
  </distributionManagement>

 URL も同じです。Nexus Web サイトにアクセスして自分でコピーする必要があります。

⑤IDEAのpom.xmlを右クリック➡Mavenを実行➡デプロイ

「BUILD SUCCESS」と表示された場合は、アップロードが成功したことを意味します。

4.2. Nexus ライブラリ jar の参照

① Maven インストールディレクトリの
ファイルパス/maven/バージョン番号/libexec/conf/settings.xmlを見つけます。

②プロファイルノード

            <profile>
              <!--profile 的 id-->
              <id>nexus</id>
              <repositories>
                  <repository>
                      <!--仓库 id,repositories 可以配置多个仓库,保证 id 不重复-->
                      <id>nexus</id>
                      <!--仓库地址,即 nexus 仓库组的地址-->
                      <url>http://localhost:8081/repository/maven-public/</url>
                      <!--是否下载 releases 构件-->
                      <releases>
                          <enabled>true</enabled>
                      </releases>
                      <!--是否下载 snapshots 构件-->
                      <snapshots>
                          <enabled>true</enabled>
                      </snapshots>
                  </repository>
              </repositories>
              <pluginRepositories>
                  <!-- 插件仓库,maven 的运行依赖插件,也需要从私服下载插件 -->
                  <pluginRepository>
                      <!-- 插件仓库的 id 不允许重复,如果重复后边配置会覆盖前边 -->
                      <id>public</id>
                      <name>Public Repositories</name>
                      <url>http://localhost:8081/repository/maven-public/</url>
                      <!--是否下载 releases 构件-->
                      <releases>
                          <enabled>true</enabled>
                      </releases>
                      <!--是否下载 snapshots 构件-->
                      <snapshots>
                          <enabled>true</enabled>
                      </snapshots>
                  </pluginRepository>
              </pluginRepositories>
          </profile>

 ③activeProfilesノード

  <!-- 激活下载模板-->
    <activeProfiles>
      <activeProfile>nexus</activeProfile>
    </activeProfiles>

④依存関係をダウンロードする

POM 内のリポジトリ

<!--获取公共的Maven依赖库-->
  <repositories>
    <repository>
      <id>nexus</id>
      <url>http://localhost:8081/repository/maven-public/</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
  </repositories>`1

  この時点で、プロジェクトは通常どおり Nexus を使用できるようになります。

私の共有はここで終わりです。議論やコミュニケーションのためにコメントエリアへようこそ!

役に立ったと思ったら、高評価をお願いします♥♥

おすすめ

転載: blog.csdn.net/weixin_74318097/article/details/132579773