Compiler crash in Demetra

I'm getting a compiler crash trying to build my project in Demetra. I've
used the same compiler to build the same project in myeclipse, so I think
that it should work. The situation is this:

Project A:
- JAVA project
- uses hibernate annotations
- includes the javax.persistence classes in its classpath and exports it

Project B:
- Web project
- depends on Project A
- no direct dependencies on javax.persistence

Project A compiles just fine, but when I try to build project B I get an
error message (see below) that it can't find the primary key generation
annotation class in the javax.persistence classes. Now I know that this
comes up as a compiler assertion error, but like I said the same compiler
will build this project without using IDEA.

I've played around with including the library directly in different places,
but I always get this error. Why would my web project even care about the
annotations in a dependent project???

-- Les Walker

-



Information:An exception has occurred in the compiler (1.5.0_04). Please
file a bug at the Java Developer Connection
(http://java.sun.com/webapps/bugreport) after checking the Bug Parade for
duplicates. Include your program and the following diagnostic in your
report. Thank you.
Information:java.lang.AssertionError: cannot find method
javax.persistence.Id.generate()
Information: at
com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy.findAccessMethod(ClassReader.java:1074)
Information: at
com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy.deproxyCompound(ClassReader.java:1057)
Information: at
com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy.deproxyCompoundList(ClassReader.java:1046)
Information: at
com.sun.tools.javac.jvm.ClassReader$AnnotationCompleter.enterAnnotation(ClassReader.java:1195)
Information: at com.sun.tools.javac.comp.Annotate.flush(Annotate.java:94)
Information: at
com.sun.tools.javac.comp.Annotate.enterDone(Annotate.java:86)
Information: at com.sun.tools.javac.comp.Enter.complete(Enter.java:470)
Information: at com.sun.tools.javac.comp.Enter.main(Enter.java:426)
Information: at
com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:413)
Information: at com.sun.tools.javac.main.Main.compile(Main.java:592)
Information: at com.sun.tools.javac.main.Main.compile(Main.java:544)
Information: at com.sun.tools.javac.Main.compile(Main.java:67)
Information: at com.sun.tools.javac.Main.main(Main.java:52)
Information: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Information: at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
Information: at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
Information: at java.lang.reflect.Method.invoke(Method.java:585)
Information: at
com.intellij.rt.compiler.JavacRunner.main(JavacRunner.java:56)
Information:Compilation completed with 1 error and 0 warnings
Information:1 error
Information:0 warnings
Error:Compiler internal error. Process terminated with exit code 4


2 comments

Looks like this bug
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6214965

Eclipse doesn't use javac, but its own compiler, which is probably why
the bug doesn't happen there. Fortunately Demetra can also use the
Eclipse compiler. Go to "Project Settings > Compiler" and change the
drop down labeled "Use Compiler: " to "Eclipse".

Hope that helps,
Bas


Les Walker wrote:

I'm getting a compiler crash trying to build my project in Demetra. I've
used the same compiler to build the same project in myeclipse, so I think
that it should work. The situation is this:

Project A:
- JAVA project
- uses hibernate annotations
- includes the javax.persistence classes in its classpath and exports it

Project B:
- Web project
- depends on Project A
- no direct dependencies on javax.persistence

Project A compiles just fine, but when I try to build project B I get an
error message (see below) that it can't find the primary key generation
annotation class in the javax.persistence classes. Now I know that this
comes up as a compiler assertion error, but like I said the same compiler
will build this project without using IDEA.

I've played around with including the library directly in different places,
but I always get this error. Why would my web project even care about the
annotations in a dependent project???

-- Les Walker

------------------------------------------------------------------------------------

0

That did it!

Thx,

-- Les Walker

"Bas Leijdekkers" <leijdekkers@SPAMBLOCK.carp-technologies.nl> wrote in
message news:43FB3561.1030705@SPAMBLOCK.carp-technologies.nl...

Looks like this bug
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6214965

>

Eclipse doesn't use javac, but its own compiler, which is probably why the
bug doesn't happen there. Fortunately Demetra can also use the Eclipse
compiler. Go to "Project Settings > Compiler" and change the drop down
labeled "Use Compiler: " to "Eclipse".

>

Hope that helps,
Bas

>
>

Les Walker wrote:

>> I'm getting a compiler crash trying to build my project in Demetra. I've
>> used the same compiler to build the same project in myeclipse, so I think
>> that it should work. The situation is this:
>>
>> Project A:
>> - JAVA project
>> - uses hibernate annotations
>> - includes the javax.persistence classes in its classpath and exports it
>>
>> Project B:
>> - Web project
>> - depends on Project A
>> - no direct dependencies on javax.persistence
>>
>> Project A compiles just fine, but when I try to build project B I get an
>> error message (see below) that it can't find the primary key generation
>> annotation class in the javax.persistence classes. Now I know that this
>> comes up as a compiler assertion error, but like I said the same compiler
>> will build this project without using IDEA.
>>
>> I've played around with including the library directly in different
>> places, but I always get this error. Why would my web project even care
>> about the annotations in a dependent project???
>>
>> -- Les Walker
>>
>> -



0

Please sign in to leave a comment.