0

Google にはこれに対するいくつかの回答がありますが、それらはすべて Maven を使用しているユーザー向けです。私はMavenを使用していないので、困惑しています。AspectJ プラグインを使用していない他のプロジェクトがあり、それらの JUnit テストは Eclipse で正常に実行されます。Eclipse がクラスを見つけられない理由がわかりません。クラス自体を右クリックし、JUnit テストとして実行するように指示します。AspectJ 以外のプロジェクトの JUnit テストで機能します。誰でも助けることができますか?

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)
4

2 に答える 2

1

以前、私は同様の問題に直面しました。問題は、外部ライブラリ (Selenium サーバーなど) へのビルド パスが壊れていたためでした。まず、ビルド パスを開き (プロジェクトを右クリック -> ビルド パス -> ビルド パスを構成)、すべての外部ライブラリが正常に読み込まれることを確認します (「読み込めません」などのメッセージが表示されます)。最適化または Ant などの外部ツールの追加中に、ライブラリの名前が変更または移動された可能性があります。お役に立てれば

WBR、アンドレイ

于 2011-10-27T09:39:32.217 に答える
0

AspectJ プラグインがビルド クラスパスに影響を与えている可能性がありますが、ランタイム クラスパスには影響していません。クラスのランチャー エントリを作成し、jar を含めるようにクラスパスを明示的に設定します。

Eclipse の「ロード タイプ」機能を使用して、クラスがどこからロードされているかを確認します。

Ctrl-Space-T でダイアログが表示されます。ターゲット クラス名「BasicSpectrogramPeriodogramTests」を入力します。リストされているすべてのクラスのクラス名の右側、または選択したクラスのダイアログの下部近くに、ワークスペース内のパッケージ名と場所を表示する必要があります。Eclipse によってロードされている場合、これには jar とそのパスが含まれます。

クラスのパスがランタイム構成クラスパスにあるものであることを確認してください。重複であっても、クラスパスの先頭に明示的に追加してください。

于 2010-11-30T15:52:25.080 に答える