Hi, I have a problem using -XaddExports in jigsaw build 94. This is the first build I tried so I don't know if the problem also occurs in earlier versions.
In Lombok we use unsupported internal APIs (yes at our own risk) After reading the instructions on http://openjdk.java.net/jeps/261 "Breaking encapsulation" I've added the -XaddExports flag. The exception I got luckily gave me the module name as well as the package to export. However I still got the same exception (details below). Am I doing something wrong (apart from using unsupported internal APIs)? Is the exception wrong? Roel $ java -version java version "1.9.0-ea" Java(TM) SE Runtime Environment (build 1.9.0-ea-jigsaw-nightly-h403-20151201-b94) Java HotSpot(TM) 64-Bit Server VM (build 1.9.0-ea-jigsaw-nightly-h403-20151201-b94, mixed mode) $ javac -XaddExports:jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED -cp lombok.jar Test.java An annotation processor threw an uncaught exception. Consult the following stack trace for details. java.lang.IllegalAccessError: class lombok.javac.apt.LombokProcessor (in module: Unnamed Module) cannot access class com.sun.tools.javac.processing.JavacProcessingEnvironment (in module: jdk.compiler), com.sun.tools.javac.processing is not exported to Unnamed Module at lombok.javac.apt.LombokProcessor.init(LombokProcessor.java:84) at lombok.core.AnnotationProcessor$JavacDescriptor.want(AnnotationProcessor.java:87) at lombok.core.AnnotationProcessor.init(AnnotationProcessor.java:141) at lombok.launch.AnnotationProcessorHider$AnnotationProcessor.init(AnnotationProcessor.java:53) at com.sun.tools.javac.processing.JavacProcessingEnvironment$ProcessorState.<init>(jdk.compiler@9.0 /JavacProcessingEnvironment.java:669) at com.sun.tools.javac.processing.JavacProcessingEnvironment$DiscoveredProcessors$ProcessorStateIterator.next(jdk.compiler@9.0 /JavacProcessingEnvironment.java:766) at com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(jdk.compiler@9.0 /JavacProcessingEnvironment.java:857) at com.sun.tools.javac.processing.JavacProcessingEnvironment.access$2100(jdk.compiler@9.0 /JavacProcessingEnvironment.java:104) at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(jdk.compiler@9.0 /JavacProcessingEnvironment.java:1183) at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(jdk.compiler@9.0 /JavacProcessingEnvironment.java:1291) at com.sun.tools.javac.main.JavaCompiler.processAnnotations(jdk.compiler@9.0 /JavaCompiler.java:1247) at com.sun.tools.javac.main.JavaCompiler.compile(jdk.compiler@9.0 /JavaCompiler.java:921) at com.sun.tools.javac.main.Main.compile(jdk.compiler@9.0 /Main.java:261) at com.sun.tools.javac.main.Main.compile(jdk.compiler@9.0 /Main.java:143) at com.sun.tools.javac.Main.compile(jdk.compiler@9.0/Main.java:56) at com.sun.tools.javac.Main.main(jdk.compiler@9.0/Main.java:42)