Java パッケージを Artifact Registry に保存する
このクイックスタートでは、限定公開の Artifact Registry Maven リポジトリを設定して、パッケージを設定したリポジトリにアップロードする方法を説明します。
このタスクを Google Cloud コンソールで直接行う際の順を追ったガイダンスについては、「ガイドを表示」をクリックしてください。
始める前に
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. Google Cloud コンソールに移動します。
Google Cloud コンソールのツールバーで、「Cloud Shell をアクティブにする」をクリックします:
- リポジトリを作成します。
Google Cloud コンソールで [リポジトリ] ページを開きます。
[リポジトリを作成] をクリックします。
リポジトリ名として
quickstart-java-repo
を指定します。形式として Maven を選択し、モードとして Standard を選択します。
[ロケーション タイプ] で、[リージョン] を選択し、ロケーション
us-central1
を選択します。[作成] をクリックします。
このリポジトリがリポジトリ リストに追加されます。
次のコマンドを実行して、現在のプロジェクトでロケーション
us-central1
にquickstart-java-repo
いう新しい Java パッケージ リポジトリを作成します。gcloud artifacts repositories create quickstart-java-repo --repository-format=maven \ --location=us-central1 --description="Java package repository"
次のコマンドを実行して、リポジトリが作成されたことを確認します。
gcloud artifacts repositories list
Artifact Registry コマンドの詳細については、
gcloud artifacts
コマンドを実行してください。使用するシンプルな Maven プロジェクトを選択します。
シンプルなプロジェクトがない場合は、Maven in 5 minutes プロジェクトを作成できます。
このクイックスタートでは、追加の親やプラグインの依存関係が Artifact Registry に格納されていないシンプルなプロジェクトを前提としています。Artifact Registry 内に依存関係がある Maven プロジェクトの構成について詳しくは、認証情報ヘルパーによる認証をご覧ください。
gcloud
コマンドを簡素化するには、デフォルトのリポジトリをquickstart-java-repo
に、デフォルトのロケーションをus-central1
に設定します。値を設定した後は、リポジトリまたはロケーションを必要とするgcloud
コマンドでそれらを指定する必要はありません。リポジトリを設定するには、次のコマンドを実行します。
gcloud config set artifacts/repository quickstart-java-repo
ロケーションを設定するには、次のコマンドを実行します。
gcloud config set artifacts/location us-central1
これらのコマンドの詳細については、gcloud config set のドキュメントをご覧ください。
次のコマンドを実行して、デフォルトの
quickstart-java-repo
リポジトリの設定を出力します。gcloud artifacts print-settings mvn
gcloud
コマンドの出力は次のスニペットのようになります。PROJECT はプロジェクト ID です。<distributionManagement> <snapshotRepository> <id>artifact-registry</id> <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url> </snapshotRepository> <repository> <id>artifact-registry</id> <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url> </repository> </distributionManagement> <repositories> <repository> <id>artifact-registry</id> <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> <build> <extensions> <extension> <groupId>com.google.cloud.artifactregistry</groupId> <artifactId>artifactregistry-maven-wagon</artifactId> <version>2.2.5</version> </extension> </extensions> </build>
Maven プロジェクトの
pom.xml
ファイルに設定を追加します。次の概要は、各メイン要素の相対的な配置を示しています。ファイルの構造についての詳細については、Maven の POM リファレンスをご覧ください。<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <!-- Build Settings --> <build> ... <extensions>...</extensions> </build> <!-- Environment Settings --> <repositories>...</repositories> <distributionManagement>...</distributionManagement> </project>
リポジトリを
build.gradle
ファイルに接続するための設定を追加します。次のコマンドは、デフォルトのquickstart-java-repo
リポジトリに追加される設定を出力します。gcloud artifacts print-settings gradle
gcloud
コマンドの出力は次のようになります。ここで、PROJECT はプロジェクト ID です。plugins { id "maven-publish" id "com.google.cloud.artifactregistry.gradle-plugin" version "2.2.5" } publishing { repositories { maven { url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo" } } } repositories { maven { url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo" } }
build.gradle
ファイルに publications セクションが含まれていることを確認します。存在しない場合はbuild.gradle
ファイルに追加してください。次の例に示すように、
publications
セクションはpublishing
の子になります。publishing { publications { mavenJava(MavenPublication) { groupId 'maven.example.id' from components.java } } repositories { maven { url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo" } } }
init.gradle
ファイルまたはsettings
ファイルにリポジトリ構成を追加することもできます。これらのオプションの詳細については、認証を設定するをご覧ください。パッケージをリポジトリにアップロードする
Maven の場合は、
mvn deploy
とmvn release
を使用してリポジトリにパッケージを追加できます。Gradle の場合は、
gradle publish
コマンドを使用してパッケージをリポジトリにアップロードします。リポジトリ内のパッケージを表示する
パッケージがリポジトリに追加されたことを確認するには:コンソール
Google Cloud コンソールで [リポジトリ] ページを開きます。
リポジトリ リストで、
quickstart-java-repo
リポジトリをクリックします。[パッケージ] ページに、リポジトリ内のパッケージが一覧表示されます。
gcloud
quickstart-java-repo
リポジトリ内のパッケージを一覧表示するには、次のコマンドを実行します。gcloud artifacts packages list --repository=quickstart-java-repo
出力は次のようになります。
Listing items under project <project-id>, location us-central1,\ repository quickstart-java-repo. PACKAGE: maven.example.id:gradle-demo CREATE_TIME: 2022-01-20T22:46:07 UPDATE_TIME: 2022-01-20T22:46:07
ここで、
maven.example.id:gradle-demo
はパッケージ ID です。パッケージのバージョンを表示するには、次のコマンドを実行します。
gcloud artifacts versions list --package=PACKAGE
ここで、PACKAGE はパッケージ ID です。
Google Cloud コンソールで [リポジトリ] ページを開きます。
リポジトリ リストで、
quickstart-java-repo
リポジトリを選択します。[削除] をクリックします。
quickstart-java-repo
リポジトリを削除するには、次のコマンドを実行します。gcloud artifacts repositories delete quickstart-java-repo
アクティブな
gcloud
構成のデフォルトのリポジトリとロケーション設定を削除するには、次のコマンドを実行します。gcloud config unset artifacts/repository gcloud config unset artifacts/location
- 認証の構成の詳細を確認する
- リポジトリの管理について確認する
- パッケージの管理について確認する
- DevOps に関するリソースを読む。また、研究プログラムについて確認する。
Cloud Shell を起動する
このクイックスタートでは、Google Cloudでホストされているリソースを管理するためのシェル環境である Cloud Shell を使用します。Cloud Shell には、Google Cloud CLI と Java がプリインストールされています。gcloud CLI は、 Google Cloudの主要なコマンドライン インターフェースを提供します。
Cloud Shell を起動します。
コンソールの下部にあるフレーム内で Cloud Shell セッションが開きます。このシェルで gcloud
コマンドを実行します。
Java パッケージ リポジトリを作成する
Java アーティファクトのリポジトリを作成します。コンソール
gcloud
Maven を構成する
これで、Maven プロジェクトでリポジトリにパッケージをアップロードできるようになりました。
Gradle を構成する
作成した Artifact Registry リポジトリにパッケージをデプロイするシンプルな Gradle プロジェクトを作成します。テスト用の Gradle ビルドがない場合は、入門 Gradle のチュートリアルに従ってシンプルな Gradle ビルドを作成できます。gcloud
コマンドを簡素化するには、デフォルトのリポジトリを quickstart-java-repo
に、デフォルトのロケーションを us-central1
に設定します。値を設定した後は、リポジトリまたはロケーションを必要とする gcloud
コマンドでそれらを指定する必要はありません。
リポジトリを設定するには、次のコマンドを実行します。
gcloud config set artifacts/repository quickstart-java-repo
ロケーションを設定するには、次のコマンドを実行します。
gcloud config set artifacts/location us-central1
これらのコマンドの詳細については、gcloud config set のドキュメントをご覧ください。
クリーンアップ
このページで使用したリソースについて、 Google Cloud アカウントに課金されないようにするには、次の手順を実施します。
リポジトリを削除する前に、保持する必要があるパッケージが別の場所で使用可能であることを確認してください。
リポジトリを削除するには:
コンソール
gcloud