人工目录包含点,可以';t使用Gradle 6.5解决依赖关系

人工目录包含点,可以';t使用Gradle 6.5解决依赖关系,gradle,artifactory,Gradle,Artifactory,使用5.4.1,Gradle能够解析表单的依赖关系: dependencies { implementation "my.groupname:my-project-name:${version}" } 其中依赖项工件存储在jFrog工件库中,位于: //my.artifactory.url/my-repo/my.groupname/my-project-name/ 如果我将包装器升级到6.5,Gradle将无法再解析依赖关系。如果设置完全在我的控制之下,我会将工件移动

使用5.4.1,Gradle能够解析表单的依赖关系:

dependencies {
  implementation "my.groupname:my-project-name:${version}"
}
其中依赖项工件存储在jFrog工件库中,位于:

//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}"
}

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

更新:(最初的答案只在热缓存上起作用)我通过向存储库中添加一个条目并在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丢失)