ClassNotFoundException для тестов JUnit в проекте AspectJ в Eclipse - PullRequest
0 голосов
/ 30 ноября 2010

У Google есть несколько ответов на этот вопрос, но все они предназначены для людей, использующих Maven.Я не использую Maven, поэтому я в тупике.У меня есть другие проекты, которые не используют плагин AspectJ, и их тесты JUnit прекрасно работают в Eclipse.Я не могу понять, почему Eclipse не может найти класс.Я щелкаю правой кнопкой мыши по самому классу и затем говорю ему, чтобы он выполнялся как тест JUnit.Это работает для тестов JUnit в моих проектах не-AspectJ.Кто-нибудь может помочь?

Class not found BasicSpectrogramPeriodogramTests
java.lang.ClassNotFoundException: BasicSpectrogramPeriodogramTests
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClass(RemoteTestRunner.java:693)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClasses(RemoteTestRunner.java:429)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:452)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)

Ответы [ 2 ]

1 голос
/ 27 октября 2011

Ранее я сталкивался с подобной проблемой, и проблема была из-за неправильных путей сборки к внешним библиотекам (например, серверу Selenium). Поэтому, прежде всего, пожалуйста, откройте путь сборки (щелкните правой кнопкой мыши проект -> Путь сборки -> Настроить путь сборки) и убедитесь, что все внешние библиотеки могут быть успешно загружены (есть сообщения типа «не удается загрузить»). Скорее всего, библиотека была переименована / перемещена при оптимизации или добавлении внешних инструментов, таких как Ant. Надеюсь, это поможет

WBR, Андрей

0 голосов
/ 30 ноября 2010

Плагин AspectJ может влиять на ваш путь к классу сборки, но не на путь к классу во время выполнения. Создайте запись средства запуска для вашего класса, а затем явно укажите путь к классу, чтобы включить jar.

Используйте функцию Eclipse 'load type', чтобы увидеть, откуда он загружает класс.

Ctrl-Space-T открывает диалог. Введите целевое имя класса, "BasicSpectrogramPeriodogramTests Msgstr ". Он должен отображать имя пакета и его местоположение в рабочей области, либо справа от имени класса для всех перечисленных классов, либо в нижней части диалогового окна для выбранного класса. Это будет включать в себя jar и его путь, если это как он загружается Eclipse.

Убедитесь, что путь для вашего класса соответствует пути к классу конфигурации во время выполнения. Добавьте его явно вверху пути к классам, даже если это дубликат.

...