Gradle Version Resolution Problem: Building Xcore

88 Views Asked by At

Background

I'm trying to build a project which has a dependency on a library xcore 1.10.0 that has a dependency on antlr with restriction [3.2.0, 3.2.1). What exists is a version 3.2.

Problem

The build fails reporting Could not find any version that matches org.antlr:antlr-runtime:[3.2.0, 3.2.1).. When I explicitly ask for version 3.2, it resolves. When I check ava -cp "$MAVEN_HOME/lib/*" org.apache.maven.artifact.versioning.ComparableVersion 3.2 3.2.0 3.2.1, I get the following (which I interpret as 3.2 being within the requested racket):

1. 3.2 == 3.2
   3.2 == 3.2.0
2. 3.2.0 == 3.2
   3.2.0 < 3.2.1
3. 3.2.1 == 3.2.1

Reporduction

To try this at home, one should be able to check out this example project and try running ./gradlew clean build.

Questions

  • Is the version bracket wrongly specified (given the versions that actually exist and assuming version 3.2 is required)? Or is Gradle doing something weird with the interpretation of the version bracket?
  • Is there a way to work around this (other than uploading a "fake" replica with version 3.2.0 to a local repository)?
0

There are 0 best solutions below