在 Artifact Registry 中儲存 Java 套件
本快速入門導覽課程說明如何設定私有 Artifact Registry Maven 存放區,並將套件上傳至該存放區。
如要直接在 Google Cloud 控制台中,按照這項工作的逐步指南操作,請按一下「Guide me」(逐步引導):
事前準備
- 登入 Google Cloud 帳戶。如果您是 Google Cloud新手,歡迎 建立帳戶,親自評估產品在實際工作環境中的成效。新客戶還能獲得價值 $300 美元的免費抵免額,可用於執行、測試及部署工作負載。
-
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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
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.enablepermission. 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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
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.enablepermission. Learn how to grant roles.
必要的角色
如要取得建立及管理 Artifact Registry Java 套件存放區所需的權限,請要求管理員授予專案的「Artifact Registry 管理員 」(roles/artifactregistry.admin) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
啟動 Cloud Shell
在本快速入門導覽課程中,您將使用 Cloud Shell,這是用來管理Google Cloud上託管資源的殼層環境。Cloud Shell 已預先安裝 Google Cloud CLI 和 Java。gcloud CLI 提供 Google Cloud的主要指令列介面。
啟動 Cloud Shell:
前往 Google Cloud 控制台。
在 Google Cloud 控制台工具列中,點按「啟用 Cloud Shell」:

此時 Cloud Shell 工作階段會在主控台底部的頁框中開啟,您可以使用這個殼層來執行 gcloud 指令。
建立 Java 套件存放區
為 Java 構件建立存放區。- 建立存放區:
控制台
在 Google Cloud 控制台中開啟「Repositories」(存放區) 頁面。
點選「Create Repository」。
指定
quickstart-java-repo做為存放區名稱。選擇「Maven」做為格式,並選擇「Standard」做為模式。
在「位置類型」下方,選取「區域」,接著選擇位置
us-central1。點選「建立」。
存放區會新增至存放區清單。
gcloud
執行下列指令,以便在
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 專案。
如果沒有可用的簡單專案,可以建立「Maven in 5 minutes」專案。
本快速入門指南假設您的簡單專案沒有儲存在 Artifact Registry 中的其他父項或外掛程式依附元件。如要瞭解如何設定 Maven 專案,並在 Artifact Registry 中加入依附元件,請參閱「使用憑證輔助程式進行驗證」。
如要簡化
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 mvngcloud指令的輸出內容如下列程式碼片段所示,其中 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>
Maven 專案現在可以將套件上傳至存放區。
設定 Gradle
建立簡單的 Gradle 專案,將套件部署至您建立的 Artifact Registry 存放區。如果您沒有測試用的 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 說明文件。
新增可將存放區連結至
build.gradle檔案的設定。下列指令會列出要新增的預設quickstart-java-repo存放區設定。gcloud artifacts print-settings gradlegcloud指令的輸出內容如下列範例所示,其中 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 控制台中開啟「Repositories」(存放區) 頁面。
在存放區清單中,按一下
quickstart-java-repo存放區。「Packages」(套件) 頁面會列出存放區中的套件。
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 帳戶收取本頁面所用資源的費用,請按照下列步驟操作。
移除存放區之前,請先確認要保留的套件均已存放於其他位置。
如要刪除存放區,請按照下列指示操作:
控制台
在 Google Cloud 控制台中開啟「Repositories」(存放區) 頁面。
在存放區清單中,選取
quickstart-java-repo存放區。點選「刪除」。
gcloud
如要刪除
quickstart-java-repo存放區,請執行下列指令:gcloud artifacts repositories delete quickstart-java-repo如要移除您為使用中的
gcloud設定建立的預設存放區和位置設定,請執行下列指令:gcloud config unset artifacts/repository gcloud config unset artifacts/location
後續步驟
- 進一步瞭解如何設定驗證方法
- 瞭解如何管理存放區
- 瞭解如何管理套件
- 參閱開發運作相關資源,並探索我們的研究計畫。