On 08:49:36 AM Wednesday, May 11, 2011 Orion Poplawski wrote:
I'm looking at packaging jmock 2.5.1. Package is here:
http://www.cora.nwra.com/~orion/fedora/jmock-2.5.1-1.fc15.src.rpm
Build log:
http://www.cora.nwra.com/~orion/fedora/rpmbuild.log
Error is during the tests:
[junit] Testcase:
testCanMockTypesFromADynamicClassLoader(org.jmock.test.unit.lib.JavaReflect
ionImposteriserTests): Caused an ERROR
[junit] Invalid superclass index 0 in class file $UniqueTypeName$
[junit] java.lang.ClassFormatError: Invalid superclass index 0 in
class file $UniqueTypeName$
[junit] at java.lang.ClassLoader.defineClass1(Native Method)
[junit] at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
[junit] at java.lang.ClassLoader.defineClass(ClassLoader.java:480)
[junit] at
org.jmock.test.unit.support.SyntheticEmptyInterfaceClassLoader.synthesiseIn
terface(SyntheticEmptyInterfaceClassLoader.java:43) [junit] at
org.jmock.test.unit.support.SyntheticEmptyInterfaceClassLoader.findClass(Sy
ntheticEmptyInterfaceClassLoader.java:25) [junit] at
java.lang.ClassLoader.loadClass(ClassLoader.java:321) [junit] at
java.lang.ClassLoader.loadClass(ClassLoader.java:266) [junit] at
org.jmock.test.unit.lib.JavaReflectionImposteriserTests.testCanMockTypesFro
mADynamicClassLoader(JavaReflectionImposteriserTests.java:38)
I have no idea about this. I've applied two patches. One to use
objectweb classes directly rather than from cglib, and one derived from
the 2.6.0-RC2 release to support java 1.6.
It looks like the given test case doesn't support the class format used. Could
it be that your java 1.6 patch missed some test cases?
As jmock hasn't been in Fedora before I would have chosen 2.6.0-RC2 if it is
supposed to handle java 1.6 classes
Alex
Any help would be appreciated.