[ https://issues.apache.org/jira/browse/OPENJPA-1659?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12976826#action_12976826 ]
Tim Boudreau commented on OPENJPA-1659: --------------------------------------- This is supposedly fixed in JDK 7's javac. A workaround can be found here: http://netbeans.org/bugzilla/show_bug.cgi?id=193952#c4 (see the annotation processor sources linked from comment 4) > OpenJPA 2.0.0 annotation processor causes plain old Java compilation to fail > ---------------------------------------------------------------------------- > > Key: OPENJPA-1659 > URL: https://issues.apache.org/jira/browse/OPENJPA-1659 > Project: OpenJPA > Issue Type: Bug > Affects Versions: 2.0.0 > Environment: * javac 1.6.0_18 & 1.6.0_20 on Linux (Ubuntu 10.04 LTS) > * javac 1.6.0_20 on Windows XP SP3 > Reporter: Matthew T. Adams > Attachments: javac_bug.zip, OPENJPA-1659-OffTheHook.zip, > OPENJPA-1659-testcase.zip > > > Compiling the annotation whose source is below with openjpa-2.0.0.jar on the > classpath fails with the following error; compiling without succeeds. If I > remove the file META-INF/services/javax.annotation.processor.Processor from > the openjpa-2.0.0.jar, compilation succeeds. > ===================================== > Compilation log with OpenJPA on classpath: > ===================================== > $ javac -d target/classes -classpath openjpa-2.0.0.jar > src/main/java/ann/ValidatedTime.java -g -verbose -nowarn -target 1.6 -source > 1.6 > [parsing started src/main/java/ann/ValidatedTime.java] > [parsing completed 16ms] > [search path for source files: openjpa-2.0.0.jar] > [search path for class files: > /home/madams/programs/java/jdk1.6.0_20/jre/lib/resources.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/rt.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/sunrsasign.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/jsse.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/jce.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/charsets.jar,/home/madams/programs/java/jdk1.6.0_20/jre/classes,/home/madams/programs/java/jdk1.6.0_20/jre/lib/ext/localedata.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/ext/dnsns.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/ext/sunjce_provider.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/ext/sunpkcs11.jar,openjpa-2.0.0.jar] > [loading > java/lang/annotation/ElementType.class(java/lang/annotation:ElementType.class)] > [loading > java/lang/annotation/Retention.class(java/lang/annotation:Retention.class)] > [loading > java/lang/annotation/RetentionPolicy.class(java/lang/annotation:RetentionPolicy.class)] > [loading java/lang/annotation/Target.class(java/lang/annotation:Target.class)] > [loading > java/lang/annotation/Annotation.class(java/lang/annotation:Annotation.class)] > [loading java/lang/Object.class(java/lang:Object.class)] > [loading java/lang/Enum.class(java/lang:Enum.class)] > [loading java/lang/Comparable.class(java/lang:Comparable.class)] > [loading java/io/Serializable.class(java/io:Serializable.class)] > [loading java/lang/String.class(java/lang:String.class)] > Round 1: > input files: {ann.ValidatedTime} > annotations: [java.lang.annotation.Retention, > java.lang.annotation.Target] > last round: false > Round 2: > input files: {} > annotations: [] > last round: true > [search path for source files: openjpa-2.0.0.jar] > [search path for class files: > /home/madams/programs/java/jdk1.6.0_20/jre/lib/resources.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/rt.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/sunrsasign.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/jsse.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/jce.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/charsets.jar,/home/madams/programs/java/jdk1.6.0_20/jre/classes,/home/madams/programs/java/jdk1.6.0_20/jre/lib/ext/localedata.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/ext/dnsns.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/ext/sunjce_provider.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/ext/sunpkcs11.jar,openjpa-2.0.0.jar] > [loading > java/lang/annotation/ElementType.class(java/lang/annotation:ElementType.class)] > [loading > java/lang/annotation/Retention.class(java/lang/annotation:Retention.class)] > [loading > java/lang/annotation/RetentionPolicy.class(java/lang/annotation:RetentionPolicy.class)] > [loading java/lang/annotation/Target.class(java/lang/annotation:Target.class)] > [loading > java/lang/annotation/Annotation.class(java/lang/annotation:Annotation.class)] > [loading java/lang/Object.class(java/lang:Object.class)] > [loading java/lang/Enum.class(java/lang:Enum.class)] > [loading java/lang/Comparable.class(java/lang:Comparable.class)] > [loading java/io/Serializable.class(java/io:Serializable.class)] > [loading java/lang/String.class(java/lang:String.class)] > src/main/java/ann/ValidatedTime.java:21: incompatible types > found : ann.ValidatedTime.Precision > required: ann.ValidatedTime.Precision > Precision precision() default Precision.SECOND; > ^ > [checking ann.ValidatedTime] > [loading > java/lang/CloneNotSupportedException.class(java/lang:CloneNotSupportedException.class)] > [loading java/lang/Class.class(java/lang:Class.class)] > [total 437ms] > 1 error > ===================================== > Compilation log without OpenJPA on classpath: > ===================================== > $ javac -d target/classes src/main/java/ann/ValidatedTime.java -g -verbose > -nowarn -target 1.6 -source 1.6[parsing started > src/main/java/ann/ValidatedTime.java] > [parsing completed 16ms] > [search path for source files: .] > [search path for class files: > /home/madams/programs/java/jdk1.6.0_20/jre/lib/resources.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/rt.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/sunrsasign.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/jsse.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/jce.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/charsets.jar,/home/madams/programs/java/jdk1.6.0_20/jre/classes,/home/madams/programs/java/jdk1.6.0_20/jre/lib/ext/localedata.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/ext/dnsns.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/ext/sunjce_provider.jar,/home/madams/programs/java/jdk1.6.0_20/jre/lib/ext/sunpkcs11.jar,.] > [loading > java/lang/annotation/ElementType.class(java/lang/annotation:ElementType.class)] > [loading > java/lang/annotation/Retention.class(java/lang/annotation:Retention.class)] > [loading > java/lang/annotation/RetentionPolicy.class(java/lang/annotation:RetentionPolicy.class)] > [loading java/lang/annotation/Target.class(java/lang/annotation:Target.class)] > [loading > java/lang/annotation/Annotation.class(java/lang/annotation:Annotation.class)] > [loading java/lang/Object.class(java/lang:Object.class)] > [loading java/lang/Enum.class(java/lang:Enum.class)] > [loading java/lang/Comparable.class(java/lang:Comparable.class)] > [loading java/io/Serializable.class(java/io:Serializable.class)] > [loading java/lang/String.class(java/lang:String.class)] > [checking ann.ValidatedTime] > [loading > java/lang/CloneNotSupportedException.class(java/lang:CloneNotSupportedException.class)] > [loading java/lang/Class.class(java/lang:Class.class)] > [wrote target/classes/ann/ValidatedTime$Precision.class] > [wrote target/classes/ann/ValidatedTime.class] > [total 352ms] > ===================================== > Java source file src/main/java/ann/ValidatedTime.java > ===================================== > package ann; > import java.lang.annotation.ElementType; > import java.lang.annotation.Retention; > import java.lang.annotation.RetentionPolicy; > import java.lang.annotation.Target; > @Retention(RetentionPolicy.RUNTIME) > @Target(ElementType.METHOD) > public @interface ValidatedTime { > Precision precision() default Precision.SECOND; > public enum Precision { > NANOSECOND, MILLISECOND, SECOND, MINUTE, HOUR > } > } -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.