Nexus を使用して jar パッケージをプライベート サーバーに追加する方法

Nexus を使用して jar パッケージをプライベート サーバーに追加する方法

なぜ Nexus プライベート サーバーを構築する必要があるのでしょうか。その理由は非常に簡単です。一部の企業では、プロジェクト チーム メンバーに外部ネットワークを提供していないため、Maven を使用してリモート ウェアハウス アドレスにアクセスできません。そのため、ローカル エリア ネットワークで外部ネットワーク権限を持つマシンを見つけて Nexus プライベート サーバーを構築し、開発者がこのプライベート サーバーに接続する必要があります。こうすることで、Nexus プライベート サーバーを搭載したコンピューターから Maven のリモート ウェアハウスにアクセスできます。

1. まず、環境にMaven、JDK、その他の必要な環境がインストールされていることを確認します。

2. これらすべての準備ができたら、最新バージョンのnexusをダウンロードしてください。ダウンロードアドレス: http://www.sonatype.org/nexus/go

nexus-2.2-01-bundleをローカルにインストールしましたが、最新バージョンはnexus-2.4.0-09-bundleです

3. nexus-2.4.0-09-bundle\nexus-2.4.0-09\bin\jsw ディレクトリを開きます。このディレクトリの下には、nexus 環境の多くのシステム バージョンがあります。

私のコンピュータは Win7 (64) システムなので、Windows-x86-64 バージョンを選択しました。もちろん、コンピュータ システムに応じて対応するバージョンを選択できます。

バージョンを開くと、次のような画面が表示されます。

通常、nexus は Windows サービスとしてインストールされるため、install-nexus.bat をクリックして http://localhost:8081/nexus/ にアクセスします。起動後、次のページが表示されます。右上隅にログイン ハイパーリンクがあります。クリックしてログインします。

デフォルトのユーザー名はadmin、パスワードはadmin123です。

ログイン後、左側でログイン情報を変更できます。

4. 次に、Maven のプロキシ サーバーを構成します (コンピューターがインターネットに接続できないことを前提としています。接続できる場合は、これについて詳しく説明する必要はありません。導入するだけです)

左側のメニューで、以下の画像を見つけます。

クリックすると右側に多くのオプションが表示されます。

プロキシサーバーを追加するだけです。

5: 次に、ここは特に設定する必要はないようです。とにかく、あまり機能を使いませんでした。技術をしっかり学んでおらず、使い方がわからなかったのかもしれません、笑…

ちなみに、注意する必要があるもう 1 つの点は、サードパーティ、スナップショット、リリースです。これらは、サードパーティの jar (通常は Oracle データベース j ドライバー パッケージ)、プロジェクト チーム内のスナップショット、プロジェクト チーム内のリリースを保存するために使用されます。

現在、サードパーティの機能を使用して、Maven リポジトリ内のコンポーネントのない jar パッケージをサーバーにアップロードしています。サードパーティのjarをNexusにアップロードするにはどうすればいいでしょうか?次のようになります。たとえば、Oracleドライバパッケージをアップロードします。

Nexus がインストールされたので、アップロードした jar パッケージをどのように使用すればよいでしょうか? Maven プロジェクトをすでに作成しておけば、非常に簡単です。 pom.xml ファイルが含まれています。このファイルに次の内容を追加します。

まずサーバーにアクセスしてjarのMavenコンポーネントを確認します

次に、pom.xml に次のローカル倉庫アドレスを追加します。

 <リポジトリ>
   <リポジトリ>
    <id>ネクサス</id>
    <name>Team Nexus リポジトリ</name>
    <url>http://localhost:8081/nexus/content/groups/public</url>
   </リポジトリ>
  </リポジトリ>
  <プラグインリポジトリ>
   <プラグインリポジトリ>
    <id>ネクサス</id>
    <name>Team Nexus リポジトリ</name>
    <url>http://localhost:8081/nexus/content/groups/public</url>
   </プラグインリポジトリ>
  </プラグインリポジトリ>
  <依存関係>
   <依存関係>
    <グループID>com.oracle</グループID>
    <アーティファクトID>ojdbc</アーティファクトID>
    <バージョン>10.1.0.2.0</バージョン>
   </依存関係>
  </依存関係> 

この時点で、Nexus プライベート サーバーの構築は完了です。プロジェクト チームの開発者が開発する場合、プロジェクトの pom.xml ファイルに次の pom.xml 情報を追加するだけで、プライベート サーバー jar を取得できます。

他のコンポーネントを追加する場合、それらはまず Nexus プライベート サーバーにダウンロードされ、次にローカル コンピューターにダウンロードされます。今後、jar パッケージがプライベート サーバーにすでに存在することが判明した場合、プライベート サーバーから直接ダウンロードされます。存在しない場合は、インターネットからダウンロードされません。これがプライベートサーバーを構築するメリットです。ハハハ……

そのため、Maven プライベート サーバーを構築する必要があります。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Maven 入門: Nexus を使用して Maven プライベート サーバーを構築し、jar パッケージをアップロードおよびダウンロードする
  • Docker を使用して Nexus プライベート ウェアハウスを構築し、Maven プライベート サービスを実装する
  • ウェブページ経由で jar パッケージを Nexus にアップロードする方法
  • Maven プロジェクト (jar パッケージ) を Nexus プライベート サーバーに公開する方法
  • Nexus3xはプライベートリポジトリを作成し、Gradleを使用してjarパッケージをアップロードします。

<<:  MySQL 5.7 mysql コマンドラインクライアントの使用コマンドの詳細

>>:  mysql5.7.18のインストールと初期パスワードの変更方法

推薦する

Centos 7 sshd の変更 | ルートログインの禁止と sshd ポートスクリプトの定義

1. 新しいユーザーwwweee000を作成します [root@localhost ~]# user...

JSはマップを使用してdouble配列を統合します

目次序文データのシミュレーション結合されたデータ合併のアイデアコードの表示と分析最初のステップステッ...

UbuntuでGRUBの起動時間を変更する

grubの起動時間を変更するためのオンライン検索は基本的に/etc/default/grubを変更す...

VueプロジェクトでReactを書く方法の詳細

jsx/tsxファイルを直接作成できます今回のプロジェクト構成は以下のとおりです。 vueファイルで...

Vue3 における ref と reactive の詳細な説明と拡張

目次1. 参照と反応1. 反応的2.参照2. shallowRef と shallowReactiv...

Centos7.6にTomcat-8.5.39をインストールする方法

Centos7.6 に Tomcat-8.5.39 をインストールする方法は次のとおりです。詳細は次...

反応ループデータの実装(リスト)

まず、バックグラウンドから来るデータをシミュレートしてみましょう。ここでは、コードをわかりやすくする...

Dockerコンテナ監視とログ管理の実装プロセス分析

Docker の導入規模が大きくなると、コンテナを監視する必要があります。一般的に、Docker に...

なぜ IE6 が最も多くの人に使用されているのでしょうか?

まず第一に、私はウェブデザイナーです。具体的には、私は XHTML フロントエンド デザイナーです。...

フレックスレイアウトでコンテナ内のコンテンツを維持するためのソリューションの詳細な説明

モバイル側では、フレックスレイアウトが非常に便利です。デバイスの幅に応じてコンテナの幅を自動的に調整...

JavaScript によるデータ視覚化: ECharts マップの作成

目次概要予防1. 使用方法2. 実装手順予備実装コード効果: Geo共通設定上記の構成を追加した後の...

JavaScript 関数をよりエレガントにする方法

目次分割代入を使用したオブジェクトパラメータコールバック関数の命名条件文を説明的にするスイッチ文をM...

ReactにおけるuseRefの具体的な使い方

React の経験がある人なら、コンポーネントインスタンスオブジェクトや DOM オブジェクトを取得...

固定テーブル幅テーブルレイアウト: 固定

テーブルを画面全体(残りの空白領域)に表示するために、幅属性は 100% と定義されることが多く、セ...

MySQL thread_stack 接続スレッドの最適化

MySQL は、ネットワーク経由だけでなく、名前付きパイプ経由でも接続できます。MySQL への接続...