使用gradle从工件属性解析工件

使用gradle从工件属性解析工件,gradle,artifactory,Gradle,Artifactory,我试图找出如何使用artifactory和gradle从属性中解析依赖关系,但目前还不清楚 我有一个大型构建,它需要解决数千个工件,其中build.gradle文件中没有声明任何版本。对于大多数用例,我们都有解决方案,但我仍在尝试使用属性来解决最后一个场景 我们正在处理的工件通常是常春藤,外观相当标准,例如: { "repo" : "some_repo", "path" : "/some_group/some_name/1.1.0-integration", "created" :

我试图找出如何使用artifactory和gradle从属性中解析依赖关系,但目前还不清楚

我有一个大型构建,它需要解决数千个工件,其中build.gradle文件中没有声明任何版本。对于大多数用例,我们都有解决方案,但我仍在尝试使用属性来解决最后一个场景

我们正在处理的工件通常是常春藤,外观相当标准,例如:

{
  "repo" : "some_repo",
  "path" : "/some_group/some_name/1.1.0-integration",
  "created" : "2017-06-19T10:21:55.765+02:00",
  "createdBy" : "lebowski",
  "lastModified" : "2017-06-19T10:21:55.765+02:00",
  "modifiedBy" : "leboswki",
  "lastUpdated" : "2017-06-19T10:21:55.765+02:00",
  "children" : [ {
    "uri" : "/some_file-1.1.0-integration.jar",
    "folder" : false
  }, {
    "uri" : "/some_file-tests-1.1.0-integration.jar",
    "folder" : false
  }, {
    "uri" : "/ivy-1.1.0-integration.xml",
    "folder" : false
  } ],
  "uri" : "http://artifactory.url.com:8081/artifactory/api/storage/some_repo/some_group/some_name/1.1.0-integration"
}
某些组/某些名称有多个版本,其版本号的格式始终为:x.y.z-integration

但是,在任何时候,我们都需要知道什么是“最新的”(即集成分支的负责人),因此我们在文件夹“某些组/某些名称”上使用一个属性,例如:

{
  "properties" : {
  "integration" : [ "1.1.0-integration" ]
  },
  "uri" : "http://artifactory.url.com:8081/artifactory/api/storage/some_repo/some_group/some_name"
}
其中键为“集成”,值为“1.1.0-integration”。每次我们将pull请求合并到集成分支时,都会使用发布到artifactory的新版本更新该值

虽然我可以针对API执行普通HTTP GET,以找到我想要尝试的值,并测试如何从属性中解析工件

有人能建议我如何在build.gradle文件中执行此操作吗