Building of lombok projects fails
It should work
Rebuild any maven project with module-info.java
TDB
It worked with 2019.1.
Information:java: compiler message file broken: key=compiler.misc.msg.bug arguments=11, {1}, {2}, {3}, {4}, {5}, {6}, {7}
Information:java: java.lang.module.ResolutionException: Module lombok does not read a module that exports org.mapstruct.ap.spi
Information:java: at java.base/java.lang.module.Resolver.resolveFail(Resolver.java:885)
Information:java: at java.base/java.lang.module.Resolver.checkExportSuppliers(Resolver.java:760)
Information:java: at java.base/java.lang.module.Resolver.finish(Resolver.java:362)
Information:java: at java.base/java.lang.module.Configuration.<init>(Configuration.java:130)
Information:java: at java.base/java.lang.module.Configuration.resolveAndBind(Configuration.java:484)
Information:java: at java.base/java.lang.module.Configuration.resolveAndBind(Configuration.java:288)
Information:java: at jdk.compiler/com.sun.tools.javac.file.JavacFileManager.getServiceLoader(JavacFileManager.java:985)
Information:java: at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Information:java: at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
Information:java: at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
Information:java: at java.base/java.lang.reflect.Method.invoke(Method.java:566)
Information:java: at org.jetbrains.jps.javac.JavacMain$2.invoke(JavacMain.java:290)
Information:java: at com.sun.proxy.$Proxy22.getServiceLoader(Unknown Source)
Information:java: at com.sun.proxy.$Proxy23.getServiceLoader(Unknown Source)
Information:java: at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.initProcessorLoader(JavacProcessingEnvironment.java:261)
Information:java: at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.<init>(JavacProcessingEnvironment.java:237)
Information:java: at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.instance(JavacProcessingEnvironment.java:193)
Information:java: at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.initProcessAnnotations(JavaCompiler.java:1136)
Information:java: at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:922)
Information:java: at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.lambda$doCall$0(JavacTaskImpl.java:104)
Information:java: at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.handleExceptions(JavacTaskImpl.java:147)
Information:java: at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:100)
Information:java: at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:94)
Information:java: at org.jetbrains.jps.javac.JavacMain.compile(JavacMain.java:195)
Information:java: at org.jetbrains.jps.incremental.java.JavaBuilder.compileJava(JavaBuilder.java:460)
Information:java: at org.jetbrains.jps.incremental.java.JavaBuilder.compile(JavaBuilder.java:330)
Information:java: at org.jetbrains.jps.incremental.java.JavaBuilder.doBuild(JavaBuilder.java:255)
Information:java: at org.jetbrains.jps.incremental.java.JavaBuilder.build(JavaBuilder.java:213)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.runModuleLevelBuilders(IncProjectBuilder.java:1324)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.runBuildersForChunk(IncProjectBuilder.java:1004)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.buildTargetsChunk(IncProjectBuilder.java:1071)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunkIfAffected(IncProjectBuilder.java:965)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunks(IncProjectBuilder.java:794)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.runBuild(IncProjectBuilder.java:376)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.build(IncProjectBuilder.java:178)
Information:java: at org.jetbrains.jps.cmdline.BuildRunner.runBuild(BuildRunner.java:139)
Information:java: at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:288)
Information:java: at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:121)
Information:java: at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler.lambda$channelRead0$0(BuildMain.java:228)
Information:java: at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
Information:java: at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
Information:java: at java.base/java.lang.Thread.run(Thread.java:834)
Information:java: Errors occurred while compiling module 'orderbook-api'
Information:javac 11 was used to compile java sources
Information:2019-08-09 16:00 - Build completed with 1 error and 1 warning in 2 s 182 ms
Error:java: Compilation failed: internal java compiler error
Adding mapstruct-processor and plexus-contaner-default crashes with
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<annotationProcessorPaths>
<path>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
</path>
<path>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>1.3.0.Final</version>
</path>
<path>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-container-default</artifactId>
<version>2.0.0</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
</plugins>
</build>
Information:java: compiler message file broken: key=compiler.misc.msg.bug arguments=11, {1}, {2}, {3}, {4}, {5}, {6}, {7}
Information:java: java.lang.module.FindException: Unable to derive module descriptor for /Users/mspiller/.m2/repository/org/codehaus/plexus/plexus-container-default/2.0.0/plexus-container-default-2.0.0.jar
Information:java: at java.base/jdk.internal.module.ModulePath.readJar(ModulePath.java:647)
Information:java: at java.base/jdk.internal.module.ModulePath.readModule(ModulePath.java:330)
Information:java: at java.base/jdk.internal.module.ModulePath.scan(ModulePath.java:236)
Information:java: at java.base/jdk.internal.module.ModulePath.scanNextEntry(ModulePath.java:189)
Information:java: at java.base/jdk.internal.module.ModulePath.findAll(ModulePath.java:165)
Information:java: at java.base/java.lang.module.Resolver.findAll(Resolver.java:842)
Information:java: at java.base/java.lang.module.Resolver.bind(Resolver.java:223)
Information:java: at java.base/java.lang.module.Configuration.resolveAndBind(Configuration.java:482)
Information:java: at java.base/java.lang.module.Configuration.resolveAndBind(Configuration.java:288)
Information:java: at jdk.compiler/com.sun.tools.javac.file.JavacFileManager.getServiceLoader(JavacFileManager.java:985)
Information:java: at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Information:java: at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
Information:java: at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
Information:java: at java.base/java.lang.reflect.Method.invoke(Method.java:566)
Information:java: at org.jetbrains.jps.javac.JavacMain$2.invoke(JavacMain.java:290)
Information:java: at com.sun.proxy.$Proxy21.getServiceLoader(Unknown Source)
Information:java: at com.sun.proxy.$Proxy22.getServiceLoader(Unknown Source)
Information:java: at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.initProcessorLoader(JavacProcessingEnvironment.java:261)
Information:java: at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.<init>(JavacProcessingEnvironment.java:237)
Information:java: at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.instance(JavacProcessingEnvironment.java:193)
Information:java: at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.initProcessAnnotations(JavaCompiler.java:1136)
Information:java: at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:922)
Information:java: at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.lambda$doCall$0(JavacTaskImpl.java:104)
Information:java: at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.handleExceptions(JavacTaskImpl.java:147)
Information:java: at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:100)
Information:java: at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:94)
Information:java: at org.jetbrains.jps.javac.JavacMain.compile(JavacMain.java:195)
Information:java: at org.jetbrains.jps.incremental.java.JavaBuilder.compileJava(JavaBuilder.java:460)
Information:java: at org.jetbrains.jps.incremental.java.JavaBuilder.compile(JavaBuilder.java:330)
Information:java: at org.jetbrains.jps.incremental.java.JavaBuilder.doBuild(JavaBuilder.java:255)
Information:java: at org.jetbrains.jps.incremental.java.JavaBuilder.build(JavaBuilder.java:213)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.runModuleLevelBuilders(IncProjectBuilder.java:1324)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.runBuildersForChunk(IncProjectBuilder.java:1004)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.buildTargetsChunk(IncProjectBuilder.java:1071)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunkIfAffected(IncProjectBuilder.java:965)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunks(IncProjectBuilder.java:794)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.runBuild(IncProjectBuilder.java:376)
Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.build(IncProjectBuilder.java:178)
Information:java: at org.jetbrains.jps.cmdline.BuildRunner.runBuild(BuildRunner.java:139)
Information:java: at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:288)
Information:java: at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:121)
Information:java: at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler.lambda$channelRead0$0(BuildMain.java:228)
Information:java: at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
Information:java: at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
Information:java: at java.base/java.lang.Thread.run(Thread.java:834)
Information:java: Caused by: java.lang.IllegalArgumentException: plexus.container.default: Invalid module name: 'default' is not a Java identifier
Information:java: at java.base/jdk.internal.module.Checks.requireModuleName(Checks.java:59)
Information:java: at java.base/java.lang.module.ModuleDescriptor$Builder.<init>(ModuleDescriptor.java:1550)
Information:java: at java.base/java.lang.module.ModuleDescriptor.newAutomaticModule(ModuleDescriptor.java:2438)
Information:java: at java.base/jdk.internal.module.ModulePath.deriveModuleDescriptor(ModulePath.java:507)
Information:java: at java.base/jdk.internal.module.ModulePath.readJar(ModulePath.java:643)
Information:java: ... 49 more
Information:java: Errors occurred while compiling module 'some-api'
Information:javac 11 was used to compile java sources
Information:2019-08-09 16:05 - Build completed with 1 error and 0 warnings in 3 s 735 ms
Error:java: Compilation failed: internal java compiler error
Maybe something similar as #573
I confirm this issue
IDEA Version: 2019.2
JDK Version: 11.0.3
OS : Linux
Lombok Dependency Version: 1.18.8
Problem of lombok itself: https://github.com/rzwitserloot/lombok/issues/2125
I also confirm this problem on Windows 10.
IDEA Version: 2019.2.1
JDK Version: 12.0.2
OS Type & Version: Windows 10
Lombok Plugin Version: 0.26.2-2019.2
Lombok Dependency Version: 1.18.8

Please check this workaround from: https://medium.com/@Leejjon_net/youll-have-this-problems-when-you-add-lombok-to-a-modular-java-11-micro-service-832f55911bc5
Add this dependeny to your project:
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>1.3.0.Final</version>
</dependency>
@mplushnikov
I have already tried with adding mapstruct-processor (first comment) but then it crashes with missing plexus container dependency. After adding plexus container dependency ... it crashes with "Unable to derive module descriptor".
@matejsp
It looks like you added everything to annotationProcessorPaths.
Try to add mapstruct-processor to dependencies of your project.
I have also tried with the mapstruct as a dependency. I am attaching the example project.
It is working in 2019.1.4 but it's crashing the compiler in 2019.2.1.
The workaround is for the command line maven. Command line is working as excepted.
@matejsp Are you using default installation of IntelliJ? Can you please compare with "2019.2.1 for macOS with bundled JBR 8 (dmg)" from https://www.jetbrains.com/idea/download/other.html ?
Yes i am using default 2019.2.1 (now with JBR 11 by default).
I have just tried with JBR 8 and as I assumed it has the same problem (compiler used is 11 even if ide is running as java 8).
It seems that latest version of IntelliJ is very broken (https://youtrack.jetbrains.com/issue/IDEA-200481).
Perhaps it was not expressed enough that the problem occurs only when using jigsaw modules (module-info.java). We are using them for our API. But you can see that in tar.gz example project that I attached earlier.
@matejsp Thank you for clarification! Also big thanks for creating an issue on Yourtrack https://youtrack.jetbrains.com/issue/IDEA-220430
Workaround from YourTrack which worked for me: edit IDEA's compiler.xml, replace <processorPath useClasspath="false"> with <processorPath useClasspath="true">. I use IDEA 2019.3 EAP.
Edite: I have also added following dependency to all my modules:
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>1.2.0.Final</version>
<scope>provided</scope>
</dependency>
Hello,
I had the same problem with java (AdoptOpenJDK) 11.0.4.11-hotspot, IntelliJ 2019.2.3, Lombok 1.18.10 and lombok-plugin (0.26.2-2019.2).
For a while, I manage by choosing either building with IntelliJ or compiling with Maven. I have the 'lombok' and 'mapstruct-processor' dependencies and switch from one to the other, I have to add or remove from the maven compiler configuration the following the 'annotationProcessorPaths':
<annotationProcessorPaths>
<path>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.10</version>
</path>
</annotationProcessorPaths>
This morning I made a mistake in my maven compiler configuration and now building with Intellij and compiling with maven works with the same configuration. Here is the mistake I made : instead of using the tag <path> I used <dependency> like this :
<annotationProcessorPaths>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.10</version>
</dependency>
</annotationProcessorPaths>
I think that maven does not care what is the enclosing tag (you could use <abcdef> instead of <dependency>) but IntelliJ does.
Hope it helps someone.
Maven does care! But maven can do correct auto detection for annotation processors from dependencies. For maven you can just omit the whole annotationProcessorPaths section.
It used to work in Intelij, but it is broken now.
Well for me the situation is this :
mvn compile fails, IntelliJ build succeedsmvn compile succeeds, IntelliJ build failsmvn compile succeeds, IntelliJ build succeedsSame exception with 2019.3
Module lombok does not read a module that exports org.mapstruct.ap.spi
It was "fixed"/workaround in 2019.3 using "--processor-module-path compiler option (for Java 9 and later)".
Read more:
https://blog.jetbrains.com/idea/2019/10/intellij-idea-2019-2-4-is-out/
https://youtrack.jetbrains.com/issue/IDEA-220430
Most helpful comment
@matejsp Thank you for clarification! Also big thanks for creating an issue on Yourtrack https://youtrack.jetbrains.com/issue/IDEA-220430