Giter Site home page Giter Site logo

Comments (11)

jankotek avatar jankotek commented on July 17, 2024 4

There is new release 3.0.10, it is compiled with JDK 8 and EC are bounded. It should hit Maven Central in couple of hours.

from mapdb.

bratwurzt avatar bratwurzt commented on July 17, 2024 1

What exactly is the issue?

I've explained quite extensively in the issue description, but I'll try to TL;DR:

mapdb 3.0.8 has no upper limit for eclipse collections version:
<ec.version>[7.0.0,)</ec.version>
which means maven will take the latest available:
12.0.0.M2

which is built with jdk11.

from mapdb.

slovdahl avatar slovdahl commented on July 17, 2024

I saw the same too, but I think MapDB version 3.0.9 has the version locked down a little bit at least. Compare https://mvnrepository.com/artifact/org.mapdb/mapdb/3.0.8 and https://mvnrepository.com/artifact/org.mapdb/mapdb/3.0.9

image

vs

image

Guava should also be locked down to be honest. 🤷

from mapdb.

bratwurzt avatar bratwurzt commented on July 17, 2024

@slovdahl Thank you for this! I'm going to close the ticket, since this is resolved in 3.0.9+

from mapdb.

bratwurzt avatar bratwurzt commented on July 17, 2024

It seems like 3.0.9 as compiled with jdk11

from mapdb.

jankotek avatar jankotek commented on July 17, 2024

What exactly is the issue?

MapDB should run on any JDK11+, with some workarounds for sun.misc.Unsafe. If you need JDK 1.8, use MapDB 3.0.8.
To manage dependencies (EC, Guava) do version pinning in Maven.

from mapdb.

0loky0 avatar 0loky0 commented on July 17, 2024

Hey

Had the same issue in my build pipeline since few (all build projects fails)

To manage dependencies (EC, Guava) do version pinning in Maven.

@jankotek what did you mean ?

Do exclusions and manually add dependency needed ?

from mapdb.

LeboyX avatar LeboyX commented on July 17, 2024

I have also recently run into this issue, to also discover that 3.0.9, which conveniently pins an upper-bound on Eclipse Collections, can't work with Java 8. While I can manually force the 3.0.8 dependency in my own project, that doesn't really feel like a scalable solution. I shouldn't be managing the dependencies of my dependencies. If a single version is known to work with MapDB, shouldn't the MapDB project pin that, itself, so every downstream client doesn't have to do so on its behalf?

I would argue the unbounded version requirement for Eclipse Collections is, itself, a bug; new releases of Eclipse Collections can quietly break MapDB 3.0.8, forcing its dependents to "figure it out". Can an upper bound, as was clearly done in 3.0.9, be added in a Java 8-compatible way? Why would a version upgrade from 3.0.8 to 3.0.9, a very minor patch, drop support for Java 8 so suddenly?

from mapdb.

inn0kenty avatar inn0kenty commented on July 17, 2024

This fixed the issue with Java 8, Gradle 3.4 and mapdb 3.0.7.

configurations.all {
    resolutionStrategy {
        force 'org.eclipse.collections:eclipse-collections-api:12.0.0.M2'
        force 'org.eclipse.collections:eclipse-collections:12.0.0.M2'
        force 'org.eclipse.collections:eclipse-collections-forkjoin:12.0.0.M2'
    }
}

from mapdb.

brearley avatar brearley commented on July 17, 2024

Not had to pin versions before, after a google and read the gradle docs I got to this:

implementation("org.eclipse.collections:eclipse-collections") {
    because("Later Versions are built with higher JDK and fail")
    version {
        strictly("12.0.0.M2")
    }
}
implementation("org.eclipse.collections:eclipse-collections-api") {
    because("Later Versions are built with higher JDK and fail")
    version {
        strictly("12.0.0.M2")
    }
}
implementation("org.eclipse.collections:eclipse-collections-forkjoin") {
    because("Later Versions are built with higher JDK and fail")
    version {
        strictly("12.0.0.M2")
    }
}

from mapdb.

LeboyX avatar LeboyX commented on July 17, 2024

I can confirm on my project that 3.0.10 resolves the issue as well. I really appreciate the quick turnaround on this. Thank-you.

from mapdb.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.