-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migration to Java 17 #64
Comments
I should have fixed the JAXB problems with the damn Java modules. See my branch here. That one now builds and the binaries it produces seem to be running right. How I did it, TLDRI've replaced the Glassfish-based implementation of the XML binding libraries (used by JAXB) with a new implementation provided by the Jakarta project. The old one was a dead project and it was producing the issues with the Java modules. How I did it, detailsOXL files define node attribute types (called attribute names in Ondex) in a dynamic way, Now, a few of text .oxl files have attributes mapped to Essentially, that was happening because such library is buggy and doesn't define its own module In detail. the done replacement can be seen in the root POM: <!-- Since JDK 11, we need this as a separate lib -->
<dependency>
<groupId>jakarta.xml.bind</groupId>
<artifactId>jakarta.xml.bind-api</artifactId>
<version>4.0.0</version>
</dependency>
<!--This is the implementation of jakarta.xml.bind-api -->
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>4.0.0</version>
</dependency>
<!-- TODO:remove we switched to Jakarta in JDK 17
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.1</version>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
<version>2.3.2</version>
</dependency> --> Other notes
|
@jojicunnunni, please verify that it builds and runs on your PC. After the build, run the GUI (available at |
More updates: since the Neo4j upgrade to J17 isn't expected before Oct 2022, it's sensible to do this sooner than later:
The above changes are compatible with J11 (except for minor details like the compiler level in the POM), embedding them now into master will avoid that we diverge too much from the J17 branch by the time we'll be ready for completing this migration. |
We've almost completed this, adding this issue keep track of the introduced changes, and keeping the issue opened until the migration is finalised.
Essentially, we can't merge this into master right now, since Neo4j isn't compatible with Java 17. For now, I've disabled a number of Neo4j-related Ondex components, just to work with the rest and ensure it can be built and run under J17.
Notes on this on comments below.
The text was updated successfully, but these errors were encountered: