Gradle - getting the latest release version of a dependency
dependencies, gradle, ivy, java, maven
Solution
Gradle currently does not support Maven's `RELEASE` (which is rarely used and deprecated) but it does support Ivy's `latest.release` (and for snapshots `latest.integration`). However, the general recommendation is to build against exact versions. Otherwise, the build can become a lottery.
Problem
What would be the easiest way to tell `Gradle` the following: Retrieve 'junit' dependency and take its latest 'release' version. Managing Maven and Ivy repositories is sort of new to me. I tried the following steps and they result in `Could not resolve dependency ...` error: Write `compile "junit:junit:latest.release"` with repositories set to only `mavenCentral()` (however, it works if I say "junit:junit:4.10"). Write `compile "junit:junit:latest.release"` with repository set the following way: ``` ivy { // I also tried 'http://maven.org' and other possible variants. url "http://repo1.maven.org" layout "maven" } ``` Attempted to use Spring Source Ivy repository: ``` ivy { artifactPattern "http://repository.springsource.com/ivy/libraries/release/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" ivyPattern "http://repository.springsource.com/ivy/libraries/release/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" } ``` Maybe I misunderstand something. Why would getting the latest version of the dependency be such a hard task?