Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022
Azure Artifacts アップストリーム ソースを使用すると、単一のフィードを使用して、Maven Central などのパブリック レジストリから独自のパッケージとパッケージの両方をホストできます。 アップストリーム ソースが有効になっている場合、Azure Artifacts はアップストリーム ソースからインストールされたパッケージのコピーを自動的に保存します。 これにより、パブリック レジストリで障害が発生した場合でも、開発プロセスをシームレスに続行できます。
注
Maven スナップショットは、Maven アップストリーム ソースではサポートされていません。
前提条件
| 製品 | 必要条件 |
|---|---|
| Azure DevOps | - Azure DevOps 組織。 - Azure DevOps プロジェクト。 - Apache Maven をダウンロードしてインストールします。 |
フィードを作成する
Azure Artifacts フィードが既にある場合は、次のセクションに進んでください。 それ以外の場合は、次の手順に従って作成します。
Azure DevOps にサインインし、プロジェクトに移動します。
[ 成果物] を選択し、[ フィードの作成] を選択します。
フィードの 名前 を指定し、[ 表示] を設定してパッケージにアクセスできるユーザーを制御し、フィードスコープを選択 します。 アップストリーム ソースを有効にし、パブリック レジストリからのパッケージの使用を許可するには、[ 一般的なパブリック ソースからのパッケージを含める] をオンにしてください。
[ 作成] を選択してフィードの作成を完了します。
Maven Central アップストリームを追加する
フィードの設定時に [アップストリーム ソース ] チェックボックスをオンにした場合、Maven Central はアップストリーム ソースとして既に追加されている必要があります。 それ以外の場合は、次の手順に従って手動で追加できます。
Azure DevOps にサインインし、プロジェクトに移動します。
[ 成果物] を選択し、右上隅にある
ボタンを選択して フィード設定に移動します。[アップストリーム ソース] を選択し、[アップストリームの追加] を選択します。
[ソース パブリック] を選択しドロップダウン メニューから Maven Central (https://repo.maven.apache.org/maven2/) を選択し、完了したら [追加 ] を選択します。
右上隅にある Save を選択して変更を保存します。
フィードに接続する
アップストリーム ソースからのパッケージの保存を開始する前に、まずプロジェクトを設定し、フィードに接続する必要があります。
Azure DevOps にサインインし、プロジェクトに移動します。
[ 成果物] を選択し、ドロップダウン メニューからフィードを選択します。
[ フィードに接続] を選択し、左側のパネルから Maven を選択します。
前提条件がインストールされていることを確認してから、「 プロジェクトのセットアップ 」セクションの手順に従って pom.xml ファイルと settings.xml ファイルを設定し、フィードに接続します。 詳細については、「 プロジェクトのセットアップ - Maven 」を参照してください。
Maven Central からのパッケージの使用
次の例は、コマンド ラインを使用して Maven Central から Apache HttpClient パッケージを使用する方法を示しています。
注
アップストリームからパッケージを保存するには、 Feed およびアップストリーム 閲覧者 (コラボレーター) ロール以上が必要です。 詳細については、 フィードのロールとアクセス許可 に関するページを参照してください。
Maven Central
https://mvnrepository.com/に移動します。Apache HttpClient を検索します。 パッケージを選択し、インストールするバージョンを選択します。
[ Maven ] タブで、
<dependency>スニペットをコピーします。<dependency> <groupId>org.apache.httpcomponents.client5</groupId> <artifactId>httpclient5</artifactId> <version>5.5.1</version> </dependency>pom.xml ファイルを開き、
<dependencies>タグ内にスニペットを貼り付けて、ファイルを保存します。pom.xml ファイルと同じディレクトリから次のコマンドを実行して、依存関係をインストールします。
mvn install
保存されたパッケージを表示する
Maven Central からパッケージをインストールしたので、Azure Artifacts がそのパッケージのコピーをフィードに自動的に保存する方法を確認できます。 フィード ビューをフィルター処理して、さまざまなアップストリーム ソースから保存されたパッケージを表示できます。
Azure DevOps にサインインし、プロジェクトに移動します。
[ 成果物] を選択し、ドロップダウン メニューからフィードを選択します。
ソース ドロップダウンから Maven Central を選択し、このアップストリームのパッケージをフィルター処理します。
前の手順で保存した Apache HttpClient* パッケージがフィードで使用できるようになりました。
ヒント
Maven がすべての依存関係をダウンロードしていない場合は、プロジェクト ディレクトリから次のコマンドを実行して、プロジェクト ファイルを再生成します。 mvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true