NoClassDefFoundError: com/sun/java/accessibility/util/SwingEventMonitor

Pete Brunet peter.brunet at oracle.com
Mon Aug 2 16:57:04 UTC 2010


Thanks David, Those options tell me which classes were succesfully
loaded but not what classes the class loader was trying to load when the
class loader was attempting to load SwingEventMonitor.  Is there a way
to get a deeper dump while a particular class is being loaded?  -Pete

David Holmes wrote:
> Try -verbose:class or -XX:+TraceClassLoading
>
> HTH
>
> David Holmes
>
> Pete Brunet said the following on 07/31/10 07:53:
>> This blog post has been helpful to at least start the investigation:
>> http://www.jroller.com/sjivan/entry/difference_between_classnotfoundexception_and_noclassdeffounderror
>>
>>
>> However, I haven't found anything yet similar to the cases discussed in
>> the blog entry.  Since SwingEventMonitor was last updated for 1.4 I do
>> see the use of Class and ListModel instead of Class<T> and ListModel<T>
>> but it seems like this would not cause a NoClassDefFoundError.
>>
>> Other than visual inspection (which I've done) is there a technique for
>> determining what classes the class loader is attempting to load as
>> SwingEventMonitor is being loaded?
>>
>> Thanks, Pete
>>
>> Pete Brunet wrote:
>>> What is the correct way to fix this?
>>>
>>> Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError:
>>> com/sun/java/accessibility/util/SwingEventMonitor
>>>         at
>>> sun.awt.windows.accessibility.AccessibleContextMirror.<init>(AccessibleContextMirror.java:583)
>>>
>>>
>>> This class lives in jaccess-1_4.jar which I copy to lib\ext and is
>>> documented here:
>>> http://download.oracle.com/docs/cd/E17802_01/j2se/javase/technologies/accessibility/docs/jaccess-1.3/doc/api/com/sun/java/accessibility/util/package-summary.html
>>>
>>>
>>> Since (as far as I know) this class isn't part of the OpenJDK I
>>> expected
>>> javac to fail but it didn't (at least as far as the log shows):
>>>
>>> ...
>>> # Java sources to be compiled: (listed in file
>>> c:/OPF6CE~1/jdk7/build/WINDOW~2/tmp/sun/sun.awt/awt/.classes.list)
>>> ../../../src/windows/classes/sun/awt/windows/Accessibility/AccessibleContextMirror.java
>>>
>>> # Running javac:
>>> c:/OPF6CE~1/jdk7/build/WINDOW~2/J2SDK-~1/bin/javac
>>> -J-XX:ThreadStackSize=768 -J-XX:-PrintVMOptions
>>> -J-XX:+UnlockDiagnosticVMOptions -J-XX:-LogVMOutput -J-client
>>> -J-Xmx395m
>>> -J-Xms128m -J-XX:PermSize=32m -J-XX:MaxPermSize=160m -source 7
>>> -target 7
>>> -encoding ascii -Xbootclasspath:c:/OPF6CE~1/jdk7/build/WINDOW~2/classes
>>> -sourcepath
>>> c:/OPF6CE~1/jdk7/build/WINDOW~2/gensrc;../../../src/windows/classes;../../../src/share/classes
>>>
>>> -d c:/OPF6CE~1/jdk7/build/WINDOW~2/classes
>>> @c:/OPF6CE~1/jdk7/build/WINDOW~2/tmp/sun/sun.awt/awt/.classes.list.filtered
>>>
>>> /usr/bin/mkdir -p
>>> c:/OPF6CE~1/jdk7/build/WINDOW~2/tmp/sun/sun.awt/awt/obj
>>> ...
>>>
>>> The source for SwingEventMonitor isn't in any of the three directories
>>> in the -sourcepath.
>>>
>>> What files should I provide and where should I put them, both for
>>> compile time and run time?
>>>
>>> Thanks, Pete
>>>   



More information about the build-dev mailing list