NoClassDefFoundError: com/sun/java/accessibility/util/SwingEventMonitor
Pete Brunet
peter.brunet at oracle.com
Fri Jul 30 21:53:16 UTC 2010
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