Skip to content
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

Update to Java 9 #7

Closed
evainga opened this issue Oct 9, 2017 · 5 comments
Closed

Update to Java 9 #7

evainga opened this issue Oct 9, 2017 · 5 comments

Comments

@evainga
Copy link
Owner

evainga commented Oct 9, 2017

https://wiki.eclipse.org/Configure_Eclipse_for_Java_9

@mle-enso
Copy link
Contributor

Please let me know how the upgrade works in conjunction with Lombok.

Some people already share the current status of the Lombok issue with Java 9 here:
https://stackoverflow.com/questions/41520511/does-project-lombok-support-java-9

@evainga
Copy link
Owner Author

evainga commented Oct 31, 2017

I (successfully?) integrated JDK-9 in my eclipse project and found out how to start it with maven without having switched my maven java version to jdk9 so that my other projects still run with maven java 8. Therefore I'm temporarily using this command: JAVA_HOME=/usr/lib/jvm/java-9-oracle/jdk-9.0.1 mvn -settings ~/.m2/settings-central.xml clean verify

But still I get a build failure. In the beginning a warning pops out:

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.google.inject.internal.cglib.core.$ReflectUtils$1 (file:/usr/share/maven/lib/guice.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)
WARNING: Please consider reporting this to the maintainers of com.google.inject.internal.cglib.core.$ReflectUtils$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release

This is also an issue here: google/guice#1133

In the end I get this:

2017-10-31 19:05:33.570 INFO 29335 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 38429 (http)
2017-10-31 19:05:33.578 INFO 29335 --- [ main] d.r.RememberbrallDocumentation : Started RememberbrallDocumentation in 4.579 seconds (JVM running for 5.619)
Tests run: 5, Failures: 5, Errors: 0, Skipped: 0, Time elapsed: 5.611 sec <<< FAILURE! - in de.rememberbrall.RememberbrallDocumentation
createEntry(de.rememberbrall.RememberbrallDocumentation) Time elapsed: 0.147 sec <<< FAILURE!
java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException at de.rememberbrall.RememberbrallDocumentation.getPlainRequestSpec(RememberbrallDocumentation.java:48) at de.rememberbrall.RememberbrallDocumentation.createEntry(RememberbrallDocumentation.java:98)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException at de.rememberbrall.RememberbrallDocumentation.getPlainRequestSpec(RememberbrallDocumentation.java:48) at de.rememberbrall.RememberbrallDocumentation.createEntry(RememberbrallDocumentation.java:98)
deleteNewlyCreatedEntry(de.rememberbrall.RememberbrallDocumentation) Time elapsed: 0 sec <<< FAILURE!
java.lang.NoClassDefFoundError: Could not initialize class io.restassured.RestAssured at de.rememberbrall.RememberbrallDocumentation.getPlainRequestSpec(RememberbrallDocumentation.java:48) at de.rememberbrall.RememberbrallDocumentation.deleteNewlyCreatedEntry(RememberbrallDocumentation.java:127)
deleteNonExistingEntry(de.rememberbrall.RememberbrallDocumentation) Time elapsed: 0 sec <<< FAILURE!
java.lang.NoClassDefFoundError: Could not initialize class io.restassured.RestAssured at de.rememberbrall.RememberbrallDocumentation.getPlainRequestSpec(RememberbrallDocumentation.java:48) at de.rememberbrall.RememberbrallDocumentation.deleteNonExistingEntry(RememberbrallDocumentation.java:117) showAllEntries(de.rememberbrall.RememberbrallDocumentation) Time elapsed: 0.001 sec <<< FAILURE!
java.lang.NoClassDefFoundError: Could not initialize class io.restassured.RestAssured at de.rememberbrall.RememberbrallDocumentation.getPlainRequestSpec(RememberbrallDocumentation.java:48) at de.rememberbrall.RememberbrallDocumentation.showAllEntries(RememberbrallDocumentation.java:57)
showSpecificEntry(de.rememberbrall.RememberbrallDocumentation) Time elapsed: 0.001 sec <<< FAILURE!
java.lang.NoClassDefFoundError: Could not initialize class io.restassured.RestAssured at de.rememberbrall.RememberbrallDocumentation.getPlainRequestSpec(RememberbrallDocumentation.java:48) at de.rememberbrall.RememberbrallDocumentation.showSpecificEntry(RememberbrallDocumentation.java:78)
2017-10-31 19:05:33.866 INFO 29335 --- [ Thread-2] ConfigServletWebServerApplicationContext : Closing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@53d1b9b3: startup date [Tue Oct 31 19:05:29 CET 2017]; root of context hierarchy

Results :

Failed tests:
RememberbrallDocumentation>AbstractTestNGSpringContextTests.run:187->createEntry:98->getPlainRequestSpec:48 » NoClassDefFound
RememberbrallDocumentation>AbstractTestNGSpringContextTests.run:187->deleteNewlyCreatedEntry:127->getPlainRequestSpec:48 » NoClassDefFound
RememberbrallDocumentation>AbstractTestNGSpringContextTests.run:187->deleteNonExistingEntry:117->getPlainRequestSpec:48 » NoClassDefFound
RememberbrallDocumentation>AbstractTestNGSpringContextTests.run:187->showAllEntries:57->getPlainRequestSpec:48 » NoClassDefFound
RememberbrallDocumentation>AbstractTestNGSpringContextTests.run:187->showSpecificEntry:78->getPlainRequestSpec:48 » NoClassDefFound

Tests run: 5, Failures: 5, Errors: 0, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE

What can I do?

@mle-enso
Copy link
Contributor

Jdk9 introduces a rather strict modularization concept and prohibits extensive use of reflection. Both things are needed when @Inject should work. Apart from waiting and studying the information e.g. here google/guice#1085 there is not much more you can do.

@evainga
Copy link
Owner Author

evainga commented Jan 26, 2019

This can be closed as rememberbrall is now successfully migrated to java 11
with commits 4765b17 and 858adc5

@evainga evainga closed this as completed Jan 26, 2019
@evainga
Copy link
Owner Author

evainga commented Jan 26, 2019

I forgot to update to java 11 on Heroku, too . This is now also done with commit 6f59d6676a

Unfortunately the openjdk version zulu-11 seems not to bee supported yet and I used oracle jdk instead. I will open a new issue for that and keep an eye on it so that I can change it as soon as possible. see article on Heroku and Java versions

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants