使用Gradle从Artifactory下载最新版本

使用Gradle从Artifactory下载最新版本,gradle,ivy,artifactory,Gradle,Ivy,Artifactory,Artifactory的API有一个特性,您可以在其中下载最新版本的jar文件(请参阅) 他们的例子是: 得到http://localhost:8080/artifactory/ivy-local/org/acme/[RELEASE]/acme-[RELEASE].jar 我正在做一个项目,在这个项目中,所有的构建都会发布,我想从上一个版本中获取jar。所以我要找的是gradle中的依赖关系: compile "org.acme:acme:1.0.0.9.[RELEASE]" 由于方括号的转义

Artifactory的API有一个特性,您可以在其中下载最新版本的jar文件(请参阅)

他们的例子是: 得到http://localhost:8080/artifactory/ivy-local/org/acme/[RELEASE]/acme-[RELEASE].jar

我正在做一个项目,在这个项目中,所有的构建都会发布,我想从上一个版本中获取jar。所以我要找的是gradle中的依赖关系:

compile "org.acme:acme:1.0.0.9.[RELEASE]"
由于方括号的转义,此操作失败,因此我尝试:

compile "org.acme:acme:1.0.0.9.%5BRELEASE%5D"
这似乎允许gradle/ivy查找该文件,但它失败了,因为.pom文件版本与定义的版本不匹配

FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all dependencies for configuration ':project:compile'.
> Could not resolve org.acme:acme:1.0.0.9.%5BRELEASE%5D.
  Required by:
      org.acme:acme:unspecified
   > Could not resolve org.acme:acme:1.0.0.9.%5BRELEASE%5D.
      > inconsistent module metadata found. Descriptor: CachedResource: /Users/xxxx/.gradle/caches/artifacts-26/filestore/org.acme/acme/1.0.0.9.%5BRELEASE%5D/pom/3986d9c1a27873ce92c0dbd089fc1ca9618f8c1a/acme-1.0.0.9.%5BRELEASE%5D.pom for http://localhost/artifactory/org/acme/acme/1.0.0.9.%5BRELEASE%5D/acme-1.0.0.9.%5BRELEASE%5D.pom Errors: bad version: expected='1.0.0.9.%5BRELEASE%5D' found='1.0.0.9.80'

有没有办法让gradle和ivy从artifactory获取最新版本?

我能够使用ivy语法实现这一点:

compile "org.acme:acme:1.0.0.9.+"

这解决了我的问题,但我从未使用Artifactory[RELEASE]url使其工作。

我能够使用ivy语法使其工作:

compile "org.acme:acme:1.0.0.9.+"

这解决了我的问题,但我从未使用Artifactory[RELEASE]url使其正常工作。

请给出一些您想要匹配的版本的示例。RESTAPI及其约定在这里是不相关的。附言:Gradle不再在引擎盖下使用常春藤。请给出一些你想要匹配的版本的例子。RESTAPI及其约定在这里是不相关的。PS:Gradle不再在后台使用Ivy。您不能在Gradle依赖关系表示法中使用Artifactory REST API语法<代码>“org.acme:acme:latest.release”可能会起作用。您不能在Gradle依赖关系表示法中使用Artifactory REST API语法<代码>“org.acme:acme:latest.release”可能会起作用。