如何从Gradle中的私有Gitlab Maven项目注册表存储库声明依赖项?
我有一个私有项目,我在其中配置了一个GitLab CI/CD管道,用于构建该项目并将其发布到同一项目的GitLab包注册表。这很有效 在另一个项目中,我想向该包添加依赖项。尽管我在该项目的build.gradle中添加了maven repository声明,但我得到了一个错误,它说,依赖关系无法解决,我应该声明提供工件的存储库 我还试图添加一个身份验证令牌,但不知何故,我没有设法让它工作 有人知道我做错了什么吗 以下是我尝试过的: 格雷德尔先生如何从Gradle中的私有Gitlab Maven项目注册表存储库声明依赖项?,gradle,gitlab,maven-repository,Gradle,Gitlab,Maven Repository,我有一个私有项目,我在其中配置了一个GitLab CI/CD管道,用于构建该项目并将其发布到同一项目的GitLab包注册表。这很有效 在另一个项目中,我想向该包添加依赖项。尽管我在该项目的build.gradle中添加了maven repository声明,但我得到了一个错误,它说,依赖关系无法解决,我应该声明提供工件的存储库 我还试图添加一个身份验证令牌,但不知何故,我没有设法让它工作 有人知道我做错了什么吗 以下是我尝试过的: 格雷德尔先生 repositories { mavenCen
repositories {
mavenCentral()
maven {
url 'https://gitlab.com/api/v4/groups/MY-GROUP-ID-THAT-I-ENTERED/-/packages/maven'
name 'Gitlab'
credentials(HttpHeaderCredentials) {
name = 'Private-Token'
value = 'myPrivateTokenThatIGenerated'
}
authentication {
header(HttpHeaderAuthentication)
}
}
}
dependencies{
implementation 'de.dependeny.organisation:project-name:0.1.0-SNAPSHOT'
}
我在源项目中通过设置->访问令牌创建了令牌,命名为Private token,checked read registry。我还尝试了read_api
我发布的项目的build.gradle如下所示:
repositories {
mavenCentral()
maven{
url "https://gitlab.com/api/v4/projects/MYPROJECTID/packages/maven"
name "GitLab"
credentials(HttpHeaderCredentials){
name = 'Job-Token'
value = System.getenv("CI_JOB_TOKEN")
}
authentication{
header(HttpHeaderAuthentication)
}
}
}
publishing {
publications {
maven(MavenPublication) {
artifactId = 'my-customprojectname'
artifact sourceJar
artifact jar
}
}
repositories {
maven{
url "https://gitlab.com/api/v4/projects/MYPROJECTID/packages/maven"
name "GitLab"
credentials(HttpHeaderCredentials){
name = "Job-Token"
value = System.getenv("CI_JOB_TOKEN")
}
authentication{
header(HttpHeaderAuthentication)
}
}
}
}
build.gradle中的链接存储库声明出错。 它应该是projects,而不是group,并且包名称后面应该没有/-/。 应该是
'https://gitlab.com/api/v4/projects/PROJECT_ID/packages/maven“
而不是”https://gitlab.com/api/v4/groups/MY-GROUP-ID-THAT-I-ENTERED/-/packages/maven“