gradle - Artifactory目录包含点,无法使用Gradle 6.5解决依赖关系

标签 gradle artifactory

使用5.4.1,Gradle能够解析以下形式的依赖项:

dependencies {
  implementation "my.groupname:my-project-name:${version}"
}
依赖 Artifact 存储在jFrog Artifact 中的以下位置:
//my.artifactory.url/my-repo/my.groupname/my-project-name/
如果我将包装器升级到6.5,Gradle将无法再解决依赖关系。如果安装完全在我的控制之下,则将 Artifact 移至:
//my.artifactory.url/my-repo/my/groupname/my-project-name/
并在我的快乐路上。不幸的是,不是,所以我不能。有没有一种直接的方法可以解决我的项目中的问题,而无需更改 Artifact 中的结构?我正在使用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}"
}

最初,我还在元数据源中包括了mavenPom(),但另一端有一个不正确的pom.xml,因此我不得不将其删除(缺少pom.xml中的groupId)。

关于gradle - Artifactory目录包含点,无法使用Gradle 6.5解决依赖关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62613116/

相关文章:

android - jenkins使用2个git存储库,在其中一个中构建android apk,在另一个中运行maven测试

java - Android 6.0 应用程序未加载 Activity

android - Gradle包括Maven

java - 如果未以某种格式提供,Gradle 无法解析我的依赖项

Jenkins - 从 Artifactory 下载并计算出的 MD5 校验和与原始值不同

artifactory - 将 Artifactory 中的特定构建提升到不同的存储库

snapshot - Artifactory 快照文件名处理

android - Kapt 注释处理 - 如何显示完整的堆栈跟踪

gradle - 上下文网址不能为空-Artifactory Gradle插件

android - 如何修复记录为警告的 "android.enableSeparateAnnotationProcessing is experimental and unsupported"?