Managing Maven packages

This page describes adding, viewing, and deleting Java packages and package versions.

Package management is only available to alpha users. To apply for the alpha, complete the sign up form.

Before you begin

  1. If the target repository does not exist, create a new repository.
  2. Verify that you have the required permissions for the repository.
  3. Verify that you have configured authentication. If you are using an access token, make sure that you refresh the token before connecting to the repository.
  4. (Optional) Configure defaults for gcloud commands.

Adding packages

To add packages to the repository:

Maven

Use mvn deploy and mvn release to add packages to the repository.

To successfully deploy a Maven project that references a parent, the project must include the Artifact Registry Wagon provider in a core extensions file as described in the authentication instructions.

Use mvn deploy:deploy-file to upload artifacts that were built outside of Maven.

For example, this example command deploys example/external.jar and its project file example/pom.xml to the repository us-central1-maven.pkg.dev/my-project/my-repo

mvn deploy:deploy-file \
-Durl=artifactregistry://us-central1-maven.pkg.dev/my-project/my-repo \
-DpomFile=example/pom.xml -Dfile=example/external.jar

To configure integration with Cloud Build, see Integrating with Cloud Build.

Gradle

To successfully publish to the repository, your build.gradle file must include a publications section that defines files to upload.

Use the gradle publish command to upload a package to the repository.

Viewing packages and versions

To view packages and package versions using the Google Cloud Console or gcloud:

Console

  1. Open the Repositories page in the Google Cloud Console.

    Open the Repositories page

  2. In the repository list, click the appropriate repository.

    The Packages page lists the packages in the repository.

  3. Click a package to view versions of the package.

gcloud

To list packages in a repository, run the following command:

gcloud beta artifacts packages list [--repository=REPOSITORY] [--location=LOCATION]

Where

  • REPOSITORY is the name of the repository. If you configured a default repository, you can omit this flag to use the default.
  • LOCATION is a regional or multi-regional location. Use this flag to view repositories in a specific location. If you configured a default location, you can omit this flag to use the default.

To view versions of a package, run the following command:

gcloud beta artifacts versions list --package=PACKAGE [--repository=REPOSITORY] [--location=LOCATION]

Where

  • PACKAGE is the ID of the package or fully qualified identifier for the package.
  • REPOSITORY is the name of the repository. If you configured a default repository, you can omit this flag to use the default.
  • LOCATION is a regional or multi-regional location. Use this flag to view repositories in a specific location. If you configured a default location, you can omit this flag to use the default.

Deleting packages and versions

To view packages and package versions using the Google Cloud Console or gcloud:

Console

  1. Open the Repositories page in the Google Cloud Console.

    Open the Repositories page

  2. In the repository list, click the appropriate repository.

    The Packages page lists the packages in the repository.

  3. Click a package to view versions of the package.

gcloud

To list packages in a repository, run the following command:

gcloud beta artifacts packages list [--repository=REPOSITORY] [--location=LOCATION]

Where

  • REPOSITORY is the name of the repository. If you configured a default repository, you can omit this flag to use the default.
  • LOCATION is a regional or multi-regional location. Use this flag to view repositories in a specific location. If you configured a default location, you can omit this flag to use the default.

To view versions of a package, run the following command:

gcloud beta artifacts versions list --package=PACKAGE [--repository=REPOSITORY] [--location=LOCATION]

Where

  • PACKAGE is the ID of the package or fully qualified identifier for the package.
  • REPOSITORY is the name of the repository. If you configured a default repository, you can omit this flag to use the default.
  • LOCATION is a regional or multi-regional location. Use this flag to view repositories in a specific location. If you configured a default location, you can omit this flag to use the default.

Downloading packages

To download an artifact as a part of your build, you declare the artifact as a dependency.

Maven

Declare the packages you want to download in the project pom.xml file. The following example declares version 1.0 of the package artifact as a dependency.

<dependencies>
    <dependency>
        <groupId>group</groupId>
        <artifactId>artifact</artifactId>
        <version>1.0</version>
    </dependency>
<dependencies>

To learn more about Maven dependencies, see the Maven introduction to dependencies and dependency reference.

Gradle

Declare the packages you want to download in the project build.gradle file. The following example declares version 1.0 of the package artifact as an external compile dependency.

To learn more about Gradle dependencies, see the Gradle documentation.

dependencies {
    compile group: 'group', name: 'artifact', version: '1.0'
}