-
Notifications
You must be signed in to change notification settings - Fork 160
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
Build on JDK 11 #1148
Comments
|
bumping the maven-javadoc-plugin version causes this:
|
Elasticsearch is stuck on version 5. Bumping to the latest version of 5 (published Feb 19, 2019) does not seem to help :( |
There is another ticket on upgrade Solr/ES to 6.x, hopefully that'll work for JDK11 : #1114 |
Should revisit this since ES has been upgraded. See what’s the next thing that needs fixing. |
The next thing is probably fixing/including the javax.* dependencies (e.g. java.xml.bind was part of the standard JDK until 10, but removed in JDK 11) Maven allows for profiles which can activated by (for example) checking the JDK version, so probably a jdk11 profile has to be added with javax.* packages explicitly listed as a dependencies. |
Signed-off-by: Håvard Ottestad <hmottestad@gmail.com>
I'm also getting problems that JavaDoc cannot find the elasticsearch packages when building aggregate javadocs on a different project (which does use RDF4J though). Any idea what causes those? |
@reckart did you try the "develop" branch? |
@hmottestad no - did you fix the JavaDoc issue there? If yes - can you tell me how? |
I can see that the problematic classes are in |
We upgraded elasticsearch. It’s in the develop branch since it’s targeted for the 3.0 release. |
I tried even building against ElasticSearch 7.1.0 but the JavaDoc issue remained for me. Did you do anything else? |
I haven’t tried generating the javadocs with jdk 11. |
Since javax.* need to be re-included (available via the maven central repo) for JDK11, I assume this also requires creating a few CQ's |
I’ve been looking into that and apparently there is some choice in which implementation we choose. Not sure which ones are best. Also, just adding the jaxb dependencies through maven didn’t seem to be enough, they also have to be added as modules on the command line during testing and running. So we might want to start creating those java 9 module dependency files instead. |
Hmz, is that with JDK 11 ? |
I tried adding the jaxb maven dependencies to various projects in the main repo, but the tests were still failing until I added the command line option in the surefire plugin. On java 11. I might have been doing something else wrong though. Never know. My guess is that it's using both the maven dependency system and the java module system at the same time. |
Did the tests fail or the build? For tests, it should usually be enough to add the JAXB and Activation JARs as dependencies - now for the build, there may be Maven plugins which require the dependencies added to them separately. |
Using japicmp 0.14, and including jaxb-api via maven, error when compiling on JDK11 (Debian, ARM) in RDF4J HTTP Protocol (same problem when using maven-surefire 3.0-M3)
|
I believe that that's due to jaxb. |
There should be a list of version numbers in the pom file for adding back jaxb module. |
-Passembly seems to hang on core/sail/shacl (Debian ARMv8, JDK11.0.4) |
Added dependencies for javadoc plugin
Still an issue with JDK11 / Intel
|
Do you think that’s another race condition? |
After all this is done I reckon we should switch the nightly verify build to use jdk11 and keep the PR builds on jdk8 so that we can effectively verify that both still work. |
Could perhaps be JUnit, since the test class is annotated with @RunWith(Parameterized.class) unlike most other tests (could be a coincidence though) I was checking the master branch by the way, running |
EDIT: progress when I use command line maven 3.6.2 instead of Netbeans 11 built-in v3.3.x, though I probably need to repeat it a few times to be sure. (it still fails on another test way further down the line, but that's a class not found on a javax thing, so can be solved with an extra dependency) |
I still get a fair amount of these:
|
@barthanssens which branch are you seeing those on....and what hardware are you using. If your hardware is slower or faster than mine then that might be bringing som issues to light. |
Master branch, most likely slower than yours since I've an 8 year old laptop with i7-2630QM (4c/8t) and 8 GB (1066 DDR3) RAM |
That’s about the same as me. I’m rocking a 2012 MacBook Pro, 4 core and 16 gb ram. Those log messages could mean that some transactions are simply waiting for others to finish...unless it’s actually failing the build. |
|
On intel linux all |
Works on ARM linux as well |
and on MS-Windows, all with AdoptOpenJDK 11.0.5 64 bit and maven 3.6.1/2 |
Oracle JDK 11 is an LTS version, so OpenJDK 11 might also be an interesting version to support
Some EE classes like JAXB are removed in JDK 11, e.g. maven complains about missing javax.xml.bind.annotation.adapters.HexBinaryAdapter when building rdf4j-tools etc
More info can be found here: https://blog.codefx.org/java/java-11-migration-guide/
And here (modular development) https://www.youtube.com/watch?v=gtcTftvj0d0&feature=youtu.be&t=32m19s
Todo:
Status:
mvn clean install -DskipTests
mvn clean install -Passembly -DskipTests
mvn clean install
mvn clean install -Passembly
mvn clean install -Pcompliance
The text was updated successfully, but these errors were encountered: