Maven API

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

이 문서는 Maven Packages에 대한 API 문서입니다.

caution
이 API는 Maven package manager client에 의해 사용되며 일반적으로 수동으로 사용할 목적으로는 제공되지 않습니다.

GitLab 패키지 레지스트리에서 Maven 패키지를 업로드하고 설치하는 방법에 대한 지침은 Maven package registry documentation을 참조하세요.

note
이러한 엔드포인트는 표준 API 인증 방법을 준수하지 않습니다. 지원되는 헤더 및 토큰 유형에 대한 자세한 내용은 Maven package registry documentation을 참조하세요. 문서화되지 않은 인증 방법이 향후에 제거될 수 있습니다.

인스턴스 수준에서 패키지 파일 다운로드

Maven 패키지 파일을 다운로드합니다:

GET packages/maven/*path/:file_name
속성 유형 필수 설명
path string yes Maven 패키지 경로, <groupId>/<artifactId>/<version> 형식으로 입력합니다. groupId의 모든 ./로 대체합니다.
file_name string yes Maven 패키지 파일 이름입니다.
curl --header "Private-Token: <personal_access_token>" "https://gitlab.example.com/api/v4/packages/maven/foo/bar/mypkg/1.0-SNAPSHOT/mypkg-1.0-SNAPSHOT.jar"

결과를 파일로 작성하려면:

curl --header "Private-Token: <personal_access_token>" "https://gitlab.example.com/api/v4/packages/maven/foo/bar/mypkg/1.0-SNAPSHOT/mypkg-1.0-SNAPSHOT.jar" >> mypkg-1.0-SNAPSHOT.jar

이 명령은 다운로드한 파일을 현재 디렉토리에 있는 mypkg-1.0-SNAPSHOT.jar로 작성합니다.

그룹 수준에서 패키지 파일 다운로드

Maven 패키지 파일을 다운로드합니다:

GET groups/:id/-/packages/maven/*path/:file_name
속성 유형 필수 설명
path string yes Maven 패키지 경로, <groupId>/<artifactId>/<version> 형식으로 입력합니다. groupId의 모든 ./로 대체합니다.
file_name string yes Maven 패키지 파일 이름입니다.
curl --header "Private-Token: <personal_access_token>" "https://gitlab.example.com/api/v4/groups/1/-/packages/maven/foo/bar/mypkg/1.0-SNAPSHOT/mypkg-1.0-SNAPSHOT.jar"

결과를 파일로 작성하려면:

curl --header "Private-Token: <personal_access_token>" "https://gitlab.example.com/api/v4/groups/1/-/packages/maven/foo/bar/mypkg/1.0-SNAPSHOT/mypkg-1.0-SNAPSHOT.jar" >> mypkg-1.0-SNAPSHOT.jar

이 명령은 다운로드한 파일을 현재 디렉토리에 있는 mypkg-1.0-SNAPSHOT.jar로 작성합니다.

프로젝트 수준에서 패키지 파일 다운로드

Maven 패키지 파일을 다운로드합니다:

GET projects/:id/packages/maven/*path/:file_name
속성 유형 필수 설명
path string yes Maven 패키지 경로, <groupId>/<artifactId>/<version> 형식으로 입력합니다. groupId의 모든 ./로 대체합니다.
file_name string yes Maven 패키지 파일 이름입니다.
curl --header "Private-Token: <personal_access_token>" "https://gitlab.example.com/api/v4/projects/1/packages/maven/foo/bar/mypkg/1.0-SNAPSHOT/mypkg-1.0-SNAPSHOT.jar"

결과를 파일로 작성하려면:

curl --header "Private-Token: <personal_access_token>" "https://gitlab.example.com/api/v4/projects/1/packages/maven/foo/bar/mypkg/1.0-SNAPSHOT/mypkg-1.0-SNAPSHOT.jar" >> mypkg-1.0-SNAPSHOT.jar

이 명령은 다운로드한 파일을 현재 디렉토리에 있는 mypkg-1.0-SNAPSHOT.jar로 작성합니다.

패키지 파일 업로드

Maven 패키지 파일을 업로드합니다:

PUT projects/:id/packages/maven/*path/:file_name
속성 유형 필수 설명
path string yes Maven 패키지 경로, <groupId>/<artifactId>/<version> 형식으로 입력합니다. groupId의 모든 ./로 대체합니다.
file_name string yes Maven 패키지 파일 이름입니다.
curl --request PUT \
     --upload-file path/to/mypkg-1.0-SNAPSHOT.pom \
     --header "Private-Token: <personal_access_token>" \
     "https://gitlab.example.com/api/v4/projects/1/packages/maven/foo/bar/mypkg/1.0-SNAPSHOT/mypkg-1.0-SNAPSHOT.pom"