Artifactory 目录包含点,无法解析与 Gradle 6.5 的依赖关系
Artifactory directory contains dots, can't resolve dependencies with Gradle 6.5
使用 5.4.1,Gradle 能够解析以下形式的依赖项:
dependencies {
implementation "my.groupname:my-project-name:${version}"
}
依赖工件存储在 jFrog artifactory 中的位置:
//my.artifactory.url/my-repo/my.groupname/my-project-name/
如果我将包装器升级到 6.5,Gradle 将无法再解析依赖项。如果设置完全在我的控制之下,我会将工件移至:
//my.artifactory.url/my-repo/my/groupname/my-project-name/
并继续我的快乐之路。不幸的是,它不是,所以我不能。有没有一种直接的方法可以在我的项目中解决它而无需更改 artifactory 中的结构?我正在使用 maven 依赖解析,以及版本 4.16.0.
的 id com.jfrog.artifactory 插件
更新:(原始答案仅适用于热缓存)我能够通过添加一个条目来解决问题存储库以及 build.gradle:
的部分依赖项
repositories {
// ... other repositories
maven {
url "my.artifactory.url/my-repo/"
artifactUrls "my.artifactory.url/my-repo/my.groupname"
credentials {
username = "${artifactory_user}"
password = "${artifactory_password}"
}
metadataSources {
artifact()
ignoreGradleMetadataRedirection()
}
}
}
dependencies {
implementation ".:my-project-name:${version}"
}
最初,我也在 metadataSources 中包含 mavenPom()
,但另一端的 pom.xml 不正确,所以我不得不将其删除(pom.xml 中的 groupId失踪了)。
使用 5.4.1,Gradle 能够解析以下形式的依赖项:
dependencies {
implementation "my.groupname:my-project-name:${version}"
}
依赖工件存储在 jFrog artifactory 中的位置:
//my.artifactory.url/my-repo/my.groupname/my-project-name/
如果我将包装器升级到 6.5,Gradle 将无法再解析依赖项。如果设置完全在我的控制之下,我会将工件移至:
//my.artifactory.url/my-repo/my/groupname/my-project-name/
并继续我的快乐之路。不幸的是,它不是,所以我不能。有没有一种直接的方法可以在我的项目中解决它而无需更改 artifactory 中的结构?我正在使用 maven 依赖解析,以及版本 4.16.0.
的 id com.jfrog.artifactory 插件更新:(原始答案仅适用于热缓存)我能够通过添加一个条目来解决问题存储库以及 build.gradle:
的部分依赖项repositories {
// ... other repositories
maven {
url "my.artifactory.url/my-repo/"
artifactUrls "my.artifactory.url/my-repo/my.groupname"
credentials {
username = "${artifactory_user}"
password = "${artifactory_password}"
}
metadataSources {
artifact()
ignoreGradleMetadataRedirection()
}
}
}
dependencies {
implementation ".:my-project-name:${version}"
}
最初,我也在 metadataSources 中包含 mavenPom()
,但另一端的 pom.xml 不正确,所以我不得不将其删除(pom.xml 中的 groupId失踪了)。