JdtCompiler crashes when compiling widgetset

Hi,
I’m migrating a vaadin 6 project to vaadin 7, and i’ve run into an issue when trying to compile in maven:

[INFO]
— vaadin-maven-plugin:7.1.2:compile (default-cli) @ cs_wa —
[INFO]
auto discovered modules [com.cs.gwt.WidgetSet]

[WARNING]
Failed to retrieve com.vaadin:vaadin-client-compiler based on project POM
[INFO]
Using com.vaadin:vaadin-client-compiler version 7.1.2
[INFO]
Compiling module com.cs.gwt.WidgetSet
[INFO]
[ERROR]
Unexpected internal compiler error
[INFO]
java.lang.NoSuchFieldError: originalSourceLevel
[INFO]
at com.google.gwt.dev.javac.JdtCompiler.getCompilerOptions(JdtCompiler.java:615)
[INFO]
at com.google.gwt.dev.javac.JdtCompiler$CompilerImpl.(JdtCompiler.java:389)
[INFO]
at com.google.gwt.dev.javac.JdtCompiler.doCompile(JdtCompiler.java:939)
[INFO]
at com.google.gwt.dev.javac.CompilationStateBuilder$CompileMoreLater.compile(CompilationStateBuilder.java:276)
[INFO]
at com.google.gwt.dev.javac.CompilationStateBuilder.doBuildFrom(CompilationStateBuilder.java:499)
[INFO]
at com.google.gwt.dev.javac.CompilationStateBuilder.buildFrom(CompilationStateBuilder.java:423)
[INFO]
at com.google.gwt.dev.cfg.ModuleDef.getCompilationState(ModuleDef.java:373)
[INFO]
at com.google.gwt.dev.Precompile.precompile(Precompile.java:246)
[INFO]
at com.google.gwt.dev.Precompile.precompile(Precompile.java:229)
[INFO]
at com.google.gwt.dev.Precompile.precompile(Precompile.java:141)
[INFO]
at com.google.gwt.dev.Compiler.run(Compiler.java:232)
[INFO]
at com.google.gwt.dev.Compiler.run(Compiler.java:198)
[INFO]
at com.google.gwt.dev.Compiler$1.run(Compiler.java:170)
[INFO]
at com.google.gwt.dev.CompileTaskRunner.doRun(CompileTaskRunner.java:88)
[INFO]
at com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java:82)
[INFO]
at com.google.gwt.dev.Compiler.main(Compiler.java:177)

further investigation led me to the problem.
in my project i’m importing org.drools.drools-compiler which in turn is dependent on org.eclipse.jdt.core.compiler.ecj
this jar is causing the compiler to crash.
i can make the project compile when i’m excluding it.

is there a workaround for this ?

Thanks,
Yariv.

Most likely your client side module should not depend on Drools at all, it is only needed on the server.
It might make sense (also for compilation time etc) to split everything about the client side to a separate Maven module, which would make this easy to achieve.