Bug 161442

Summary: java.lang.VerifyError
Product: [Eclipse Project] JDT Reporter: Jon Barrilleaux <jonb>
Component: CoreAssignee: Olivier Thomann <Olivier_Thomann>
Status: VERIFIED DUPLICATE QA Contact:
Severity: blocker    
Priority: P3    
Version: 3.2   
Target Milestone: 3.2.2   
Hardware: PC   
OS: Windows 2000   
Whiteboard:
Attachments:
Description Flags
ProxyObject
none
ProxyEnum
none
EnumFlag none

Description Jon Barrilleaux CLA 2006-10-18 13:14:49 EDT
I recently upgraded both eclipse (3.2.1) and my JRE (1.5.0_09-b01), so I'm not sure where the culprit lies, or even where to start.  I've tried running this code from inside and outside of eclipse.

From the message (and the cryptic name of the method), this problem seems to be somewhere deep in the bowels of the JVM native code.

Debug: Loading all properties...
java.lang.VerifyError: class gumbo2.util.state.flag.EnumFlag$Impl overrides fina
l method k?&#9616;*h&#9787;*+.&#9786;
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
        at gumbo2.graphic.input.KeyboardFlags.<clinit>(KeyboardFlags.java:116)
        at gumbo2.test.impl.TestViewInput.init(TestViewInput.java:205)
        at gumbo2.test.impl.TestViewInput.<init>(TestViewInput.java:53)
        at gumbo2.test.impl.swing.TestSwingInputSensorApp.<init>(TestSwingInputS
ensorApp.java:68)
        at gumbo2.test.impl.swing.TestSwingInputSensorApp.main(TestSwingInputSen
sorApp.java:84)
Comment 1 Olivier Thomann CLA 2006-10-18 13:20:33 EDT
This could be a duplicate of bug 159973.
Could you please check with the latest integration build and confirm this is fixed?
Thanks.
Comment 2 Jon Barrilleaux CLA 2006-10-18 14:30:07 EDT
I just tried it with eclipse 3.3M2, after cleaning and rebuilding the entire project.  The problem is still there.  Perhaps the problem is related to the use of generics in combination with Enum, since my Junit tests fail only on tests that use such classes in my project.

I've attached what I think are the significant classes.
Comment 3 Jon Barrilleaux CLA 2006-10-18 14:34:06 EDT
Created attachment 52255 [details]
ProxyObject
Comment 4 Jon Barrilleaux CLA 2006-10-18 14:35:30 EDT
Created attachment 52257 [details]
ProxyEnum
Comment 5 Jon Barrilleaux CLA 2006-10-18 14:36:08 EDT
Created attachment 52258 [details]
EnumFlag
Comment 6 Olivier Thomann CLA 2006-10-18 15:07:52 EDT
I am investigating.
Comment 7 Olivier Thomann CLA 2006-10-18 15:15:02 EDT
(In reply to comment #2)
> I just tried it with eclipse 3.3M2, after cleaning and rebuilding the entire
> project.  The problem is still there.  Perhaps the problem is related to the
> use of generics in combination with Enum, since my Junit tests fail only on
> tests that use such classes in my project.
3.3M2 doesn't contain the fix for bug 159973.
You would need to use this week integration build. I cannot compile your code since it has dependencies on too many types that are not available.
Comment 8 Olivier Thomann CLA 2006-10-18 23:39:01 EDT
If you could confirm whether or not that your problem is fixed with this week integration build, it would be nice.
If you need a plugin patch for 3.2.1, let us know.
Comment 9 Jon Barrilleaux CLA 2006-10-19 00:45:23 EDT
I just checked the eclipse web site again and the status of the Windows integration and nightly builds shows as an "X".

I'll be glad to try whatever you'd like but let me know what base version I have to start with (I've currently got 3.3M2 installed) and patch over (and how -- I've never done a "patch" for eclipse), or whether there is a complete version I should install.
Comment 10 Olivier Thomann CLA 2006-10-19 23:08:25 EDT
I'll provide a patch for jdt.core based on HEAD tomorrow. If you could try it, it would be great.
Comment 11 Olivier Thomann CLA 2006-10-20 13:43:38 EDT
Did you download any of the nightly builds since I1018?
Comment 12 Jon Barrilleaux CLA 2006-10-20 18:46:45 EDT
I just gave N20061016 a try and it seems to fix the VerifyError.

I had been avoiding trying it because it was marked as having failed the JDT test for windows.

When do you guys plan to release the next stream stable build?  
Comment 13 Olivier Thomann CLA 2006-10-22 09:58:04 EDT
Next stable build M3 is planned for November 3rd, but I'd like to make sure that it contains the fix for this issue.
Could you please give it a try to the integration build next Tuesday? Or I can explain you how to patch the jdt.core component in your current install?
Comment 14 Olivier Thomann CLA 2006-10-23 19:09:22 EDT

*** This bug has been marked as a duplicate of 159973 ***
Comment 15 Maxime Daniel CLA 2007-01-16 03:21:55 EST
Considering it has been verified by the reporter (on the matching level in the HEAD stream).