[SOLVED] Gradle keeps getting 3.2 core even [3.1.0-stable] is specified

Gradle keeps getting 3.2 core even [3.1.0-stable] is specified. This is a bit weird problem, is anyone else getting this also? Everything else is 3.1 but the core jar keeps getting 3.2. I just upgraded the Gradle from version 3.5 to 4.3.1 and no change. Is there just something that I don’t see. Our Gradle,build (not all of it though):

ext {
jmonkeyengine_version = '[3.1.0-stable]'
}

repositories {
    mavenLocal()
    mavenCentral()
    jcenter()
    maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
    maven { url "https://oss.sonatype.org/content/repositories/releases/" }
    maven { url "https://jitpack.io" }
    maven { url "http://nifty-gui.sourceforge.net/nifty-maven-repo" }
}

dependencies {
    compile fileTree(dir: 'lib', include: ['*.jar'])
    compile "org.jmonkeyengine:jme3-core:$jmonkeyengine_version"
    compile "org.jmonkeyengine:jme3-plugins:$jmonkeyengine_version"
    compile "org.jmonkeyengine:jme3-effects:$jmonkeyengine_version"
    compile "org.jmonkeyengine:jme3-networking:$jmonkeyengine_version"
    compile "org.jmonkeyengine:jme3-blender:$jmonkeyengine_version"
    compile "org.jmonkeyengine:jme3-bullet:$jmonkeyengine_version"
    compile "org.jmonkeyengine:jme3-bullet-native:$jmonkeyengine_version"
    compile "org.jmonkeyengine:jme3-lwjgl:$jmonkeyengine_version"
    compile "org.jmonkeyengine:jme3-niftygui:$jmonkeyengine_version"
    compile "com.badlogicgames.gdx:gdx-ai:1.8.1"
    compile "javax.vecmath:vecmath:1.5.2"
    compile "com.simsilica:zay-es:1.2.1"
    compile "com.simsilica:zay-es-net:1.2.1"
    compile "com.simsilica:sio2:1.1.0"
    compile "com.simsilica:sim-ethereal:1.2.1"
}

Some Gradle output. I still don’t understand why it picks 3.2.

Edit: Is it that Lemur drags in this? SIO2 drags Lemur and Lemur drags 3.2…?

compile - Dependencies for source set 'main' (deprecated, use 'implementation ' instead).
+--- org.jmonkeyengine:jme3-core:[3.1.0-stable] -> 3.2.0-alpha1
+--- org.jmonkeyengine:jme3-plugins:[3.1.0-stable] -> 3.1.0-stable
|    \--- org.jmonkeyengine:jme3-core:3.1.0-stable -> 3.2.0-alpha1
+--- org.jmonkeyengine:jme3-effects:[3.1.0-stable] -> 3.1.0-stable
|    \--- org.jmonkeyengine:jme3-core:3.1.0-stable -> 3.2.0-alpha1
+--- org.jmonkeyengine:jme3-networking:[3.1.0-stable] -> 3.1.0-stable
|    \--- org.jmonkeyengine:jme3-core:3.1.0-stable -> 3.2.0-alpha1
+--- org.jmonkeyengine:jme3-blender:[3.1.0-stable] -> 3.1.0-stable
|    +--- org.jmonkeyengine:jme3-core:3.1.0-stable -> 3.2.0-alpha1
|    +--- org.ejml:dense64:0.27
|    |    \--- org.ejml:core:0.27
|    +--- org.jmonkeyengine:jme3-desktop:3.1.0-stable
|    |    \--- org.jmonkeyengine:jme3-core:3.1.0-stable -> 3.2.0-alpha1
|    +--- org.ejml:simple:0.27
|    |    +--- org.ejml:denseC64:0.27
|    |    |    \--- org.ejml:core:0.27
|    |    +--- org.ejml:dense64:0.27 (*)
|    |    \--- org.ejml:core:0.27
|    +--- org.jmonkeyengine:jme3-effects:3.1.0-stable (*)
|    \--- org.ejml:core:0.27
+--- org.jmonkeyengine:jme3-bullet:[3.1.0-stable] -> 3.1.0-stable
|    +--- org.jmonkeyengine:jme3-core:3.1.0-stable -> 3.2.0-alpha1
|    \--- org.jmonkeyengine:jme3-terrain:3.1.0-stable
|         \--- org.jmonkeyengine:jme3-core:3.1.0-stable -> 3.2.0-alpha1
+--- org.jmonkeyengine:jme3-bullet-native:[3.1.0-stable] -> 3.1.0-stable
|    \--- org.jmonkeyengine:jme3-bullet:3.1.0-stable (*)
+--- org.jmonkeyengine:jme3-lwjgl:[3.1.0-stable] -> 3.1.0-stable
|    +--- org.jmonkeyengine:jme3-core:3.1.0-stable -> 3.2.0-alpha1
|    +--- org.jmonkeyengine:jme3-desktop:3.1.0-stable (*)
|    \--- org.lwjgl.lwjgl:lwjgl:2.9.3
|         +--- org.lwjgl.lwjgl:lwjgl-platform:2.9.3
|         \--- net.java.jinput:jinput:2.0.5
|              +--- net.java.jutils:jutils:1.0.0
|              \--- net.java.jinput:jinput-platform:2.0.5
+--- org.jmonkeyengine:jme3-niftygui:[3.1.0-stable] -> 3.1.0-stable
|    +--- org.jmonkeyengine:jme3-core:3.1.0-stable -> 3.2.0-alpha1
|    +--- com.github.nifty-gui:nifty-style-black:1.4.2
|    +--- com.github.nifty-gui:nifty-default-controls:1.4.2
|    |    \--- com.github.nifty-gui:nifty:1.4.2
|    |         +--- xpp3:xpp3:1.1.4c
|    |         \--- com.google.code.findbugs:jsr305:2.0.2
|    \--- com.github.nifty-gui:nifty:1.4.2 (*)
+--- com.badlogicgames.gdx:gdx-ai:1.8.1
|    \--- com.badlogicgames.gdx:gdx:1.9.5
+--- javax.vecmath:vecmath:1.5.2
+--- com.simsilica:zay-es:1.2.1
|    +--- com.google.guava:guava:19.0
|    \--- org.slf4j:slf4j-api:1.7.13 -> 1.7.15
+--- com.simsilica:zay-es-net:1.2.1
|    +--- com.simsilica:zay-es:1.2.1 (*)
|    +--- org.jmonkeyengine:jme3-networking:3.1.0-alpha2 -> 3.1.0-stable (*)
|    \--- org.slf4j:slf4j-api:1.7.13 -> 1.7.15
+--- com.simsilica:sio2:1.1.0
|    +--- com.google.guava:guava:19.0
|    +--- org.jmonkeyengine:jme3-core:3.1.0-alpha4 -> 3.2.0-alpha1
|    +--- org.jmonkeyengine:jme3-networking:3.1.0-alpha4 -> 3.1.0-stable (*)
|    +--- com.simsilica:lemur:1.6.1
|    |    +--- org.jmonkeyengine:jme3-core:[3.1,) -> 3.2.0-alpha1
|    |    +--- com.google.guava:guava:19.0
|    |    \--- org.slf4j:slf4j-api:1.7.13 -> 1.7.15
|    +--- com.simsilica:zay-es:1.2.1 (*)
|    +--- com.simsilica:zay-es-net:1.2.1 (*)
|    +--- org.codehaus.groovy:groovy-all:2.4.5
|    +--- org.slf4j:slf4j-api:1.7.13 -> 1.7.15
|    +--- org.apache.logging.log4j:log4j-api:2.5
|    \--- org.apache.logging.log4j:log4j-core:2.5
|         \--- org.apache.logging.log4j:log4j-api:2.5
\--- com.simsilica:sim-ethereal:1.2.1
     +--- org.jmonkeyengine:jme3-networking:3.1.0-alpha4 -> 3.1.0-stable (*)
     +--- com.simsilica:sim-math:1.0.2
     |    \--- org.jmonkeyengine:jme3-core:3.1.0-alpha4 -> 3.2.0-alpha1
     \--- org.slf4j:slf4j-api:1.7.15

Ok, we are using this dirty hax now:

compile("org.jmonkeyengine:jme3-core:$jmonkeyengine_version") {
    // We get Lemur through sio2 and it drags in JME core 3.2, force our version
    force = true
}

Not sure… Lemur 1.6.1 build.gradle:

SiO2:

Unless it was the bracketing that the old Lemur 1.6.1 used to do. In which case you could fix it by specifying a newer Lemur version, also. Was pretty sure that the bracketing wasn’t supposed to go beyond 3.1, though.

The last line in this Gradle output says it, if I understood the output correctly. And the bracketing indeed specifies 3.1 or newer (Apache Maven Enforcer Built-In Rules – Version Range Specification). We had the same thing, probably copied from your stuff anyway, and we went full on to 3.2.

The version we are now using is:
jmonkeyengine_version = ‘[3.1,3.2)’

But most likely 3.1.x and the likes are not coming. So might as well fix it to 3.1.0-stable.