Yesterday Java 8 was officially released. When I try to compile and run my 
tests and application that use OpenJPA 2.3.0 with Java 8 I get errors (see 
below) when I try to enhance the entities or use the java agent.
Are there plans to support Java 8 in the near future?

I did find the following issue which was unfortunately last updated almost half 
a year ago: https://issues.apache.org/jira/browse/OPENJPA-2386

Regards,
Henno Vermeulen

Java agent:

431  olgaPersistenceUnit  WARN   [main] openjpa.Enhance - An exception was 
thrown while attempting to perform class file transformation on 
"nl/hm/olga/core/entity/AbstractEntity":java.lang.IllegalArgumentException
                at org.apache.xbean.asm4.ClassReader.<init>(Unknown Source)
                at org.apache.xbean.asm4.ClassReader.<init>(Unknown Source)
                at org.apache.xbean.asm4.ClassReader.<init>(Unknown Source)
                at 
org.apache.openjpa.enhance.AsmAdaptor.toJava7ByteArray(AsmAdaptor.java:93)
                at 
org.apache.openjpa.enhance.AsmAdaptor.toByteArray(AsmAdaptor.java:78)
                at 
org.apache.openjpa.enhance.PCClassFileTransformer.transform0(PCClassFileTransformer.java:156)
                at 
org.apache.openjpa.enhance.PCClassFileTransformer.transform(PCClassFileTransformer.java:126)
                at 
sun.instrument.TransformerManager.transform(TransformerManager.java:188)
                at 
sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:428)
                at java.lang.ClassLoader.defineClass1(Native Method)
                at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
                at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
                at java.net.URLClassLoader.defineClass(URLClassLoader.java:455)
                at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
                at java.net.URLClassLoader$1.run(URLClassLoader.java:367)
                at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
                at java.security.AccessController.doPrivileged(Native Method)
                at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
                at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
                at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
                at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
                at java.lang.ClassLoader.defineClass1(Native Method)
                at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
                at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
                at java.net.URLClassLoader.defineClass(URLClassLoader.java:455)
                at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
                at java.net.URLClassLoader$1.run(URLClassLoader.java:367)
                at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
                at java.security.AccessController.doPrivileged(Native Method)
                at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
                at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
                at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
                at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
                at 
nl.hm.oblomow.application.server.OblomowServerStarter.main(OblomowServerStarter.java:32)

Enhancer (through Maven plugin)
....
Caused by: java.lang.ArrayIndexOutOfBoundsException: 8
                at 
serp.bytecode.lowlevel.ConstantPoolTable.readByte(ConstantPoolTable.java:81)
                at 
serp.bytecode.lowlevel.ConstantPoolTable.readUnsignedShort(ConstantPoolTable.java:88)
                at 
serp.bytecode.lowlevel.ConstantPoolTable.<init>(ConstantPoolTable.java:22)
                at 
serp.bytecode.lowlevel.ConstantPoolTable.<init>(ConstantPoolTable.java:30)
                at 
org.apache.openjpa.lib.meta.ClassArgParser.getFromClass(ClassArgParser.java:324)
                at 
org.apache.openjpa.lib.meta.ClassArgParser.getFromClassFile(ClassArgParser.java:308)
                at 
org.apache.openjpa.lib.meta.ClassArgParser.parseTypeNames(ClassArgParser.java:217)
                ... 30 more

Reply via email to