0.0.6-SNAPSHOT fails in multi-project build
Closed this issue · 10 comments
It appears that on a clean muti-project build the compiler does not see the project dependency classes and fails. If the plugin is applied to a prebuilt project, then the incremental compilation succeeds. This resulted in the plugin working locally, but failing on CI.
I have issues with some classes not being emitted (and therefore errors in downstream modules referencing those classes) but upstream modules are correctly put in the classpath in my tests.
Can you run with --debug
and look for the Compiling with args
line in the output? That'd help diagnose what goes wrong.
I see Compiling with error-prone compiler
but no Compiling with args
when running gradle clean build -d 2>&1 | tee -a log
Looking at IntegerGenerator
failure, it is listed as a source file when errorprone compiles the simulator
module. When compiling the caffeine
tests which fail, the simulator-1.0.0-SNAPSHOT.jar
is listed as a compiler argument. However, the simuator/build/classes
does not contain the file so as you said it was not emitted.
That was an error-prone bug, fixed in 2.0.1-SNAPSHOT: google/error-prone@1f912d2
FYI: 2.0.1 has been released.
I'll test with Gradle 2.3-rc1 and release 0.0.6
great, let me take a look and try running it locally too. I should just need to find the right Maven coordinates to fetch 2.0.1
weird, I added classpath "com.google.errorprone:error_prone_core:2.0.1"
to the buildscript classpath and a gradle clean build
still fails with errorprone
Error-prone is not loaded in the build-script but from an errorprone
configuration added to the project. It defaults to latest.release
so Gradle should pick 2.0.1 automatically. See the README for how to customize it.
BTW, works for me with 2.3-rc-1.
yep, it works. I had to --refresh-dependencies
to force the latest.release
to be resolved