Класс weblogic.management.WeblogicMBean не найден - PullRequest
0 голосов
/ 12 апреля 2010

Я сталкиваюсь с этой проблемой, когда пытаюсь запустить тестовый пример Junit в режиме fork (запуск каждого теста в отдельной JVM) с использованием файла Build ant.

[junit] Исключение в потоке "main" java.lang.NoClassDefFoundError: weblogic / management / WebLogicMBean [junit] в java.lang.ClassLoader.defineClass1 (собственный метод) [junit] в java.lang.ClassLoader.defineClass (ClassLoader.java:621) [junit] в java.security.SecureClassLoader.defineClass (SecureClassLoader.java:124) [Джунит] в java.net.URLClassLoader.defineClass (URLClassLoader.java:260) [junit] на java.net.URLClassLoader.access $ 000 (URLClassLoader.java:56) [junit] на java.net.URLClassLoader $ 1.run (URLClassLoader.java:195) [junit] на java.security.AccessController.doPrivileged (собственный метод) [junit] в java.net.URLClassLoader.findClass (URLClassLoader.java:188) [junit] в java.lang.ClassLoader.loadClass (ClassLoader.java:307) [junit] в sun.misc.Launcher $ AppClassLoader.loadClass (Launcher.java:301) [junit] в java.lang.ClassLoader.loadClass (ClassLoader.java:252) [junit] в java.lang.ClassLoader.loadClassInternal (ClassLoader.java:320) [junit] в java.lang.ClassLoader.defineClass1 (собственный метод) [junit] в java.lang.ClassLoader.defineClass (ClassLoader.java:621) [junit] в java.security.SecureClassLoader.defineClass (SecureClassLoader.java:124) [Джунит] в java.net.URLClassLoader.defineClass (URLClassLoader.java:260) [junit] на java.net.URLClassLoader.access $ 000 (URLClassLoader.java:56) [junit] на java.net.URLClassLoader $ 1.run (URLClassLoader.java:195) [junit] на java.security.AccessController.doPrivileged (собственный метод) [junit] в java.net.URLClassLoader.findClass (URLClassLoader.java:188) [junit] в java.lang.ClassLoader.loadClass (ClassLoader.java:307) [junit] в sun.misc.Launcher $ AppClassLoader.loadClass (Launcher.java:301) [junit] в java.lang.ClassLoader.loadClass (ClassLoader.java:252) [junit] в java.lang.ClassLoader.loadClassInternal (ClassLoader.java:320) [junit] в java.lang.ClassLoader.defineClass1 (собственный метод) [junit] в java.lang.ClassLoader.defineClass (ClassLoader.java:621) [junit] в java.security.SecureClassLoader.defineClass (SecureClassLoader.java:124) [Джунит] в java.net.URLClassLoader.defineClass (URLClassLoader.java:260) [junit] на java.net.URLClassLoader.access $ 000 (URLClassLoader.java:56) [junit] at java.net.URLClassLoader $ 1.run (URLClassLoader.java:195) ....

В моих папках библиотеки сборки есть библиотека weblogic.jar, которая установлена ​​как classpath для задачи junit. Я смотрю на этот файл и не могу найти внутри WeblogicMBean.class.

Однако в Jdev я могу импортировать weblogic.management.WeblogicMBean в свой класс, если я установлю ссылку на библиотеку на этот файл weblogic.jar и скомпилирую свой класс без проблем.

Любое предположение о том, что действительно идет не так?

Большое спасибо.

1 Ответ

1 голос
/ 12 апреля 2010

NoClassDefFoundError обычно означает, что правильная версия класса не была найдена в время выполнения .

Поскольку с вашей компиляцией все в порядке, ваш CLASSPATH во время компиляции ссылается на тот же jar-файл, что и во время выполнения? Также проверьте, есть ли несколько weblogic.jar во время выполнения CLASSPATH для JUnit.

Какая у вас версия weblogic, класс находится в weblogic.jar как минимум для версии 9.

...