OneBusAway / onebusaway-alexa

An Java-based app to communicate with Amazon Alexa for devices such as the Amazon Echo
Other
52 stars 18 forks source link

JDK 11 compatibility #113

Open barbeau opened 4 years ago

barbeau commented 4 years ago

Summary:

I tried building on Travis with JDK 11: https://travis-ci.org/OneBusAway/onebusaway-alexa/jobs/605812684

and got...

[INFO] Changes detected - recompiling the module!
[INFO] Compiling 25 source files to /home/travis/build/OneBusAway/onebusaway-alexa/target/classes
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by lombok.javac.apt.Processor to field com.sun.tools.javac.processing.JavacProcessingEnvironment.processorClassLoader
WARNING: Please consider reporting this to the maintainers of lombok.javac.apt.Processor
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
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 24.066 s
[INFO] Finished at: 2019-11-01T01:38:26Z
[INFO] Final Memory: 25M/90M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.3:compile (default-compile) on project onebusaway-alexa: Fatal error compiling: java.lang.ExceptionInInitializerError: com.sun.tools.javac.code.TypeTags -> [Help 1]

Looks like Lombak dependency needs to be updated (perhaps among other things) to get it to build and run.

Here's the Lombak issue: https://github.com/rzwitserloot/lombok/issues/1572

Steps to reproduce:

Build on JDK 11

Expected behavior:

Project should build and run

Observed behavior:

You get a build error:

Illegal reflective access by lombok.javac.apt.Processor to field com.sun.tools.javac.processing.JavacProcessingEnvironment.processorClassLoader