プロジェクトの参照ライブラリにあるjarファイルからインポートしたクラスを使用しようとしています。Eclipse RunTime NoClassDefFoundError
私は、参照されたライブラリにpydev.jarファイルを持つプロジェクトを持っています。 Pydev.jarにはorg.python.pydev.navigator.elements.PythonNodeがあり、これをJavaファイルの1つにインポートしました。 Eclipseを使用してプロジェクトをEclipseアプリケーションとして実行すると、java.lang.NoClassDefFoundError:org/python/pydev/navigator/elements/PythonNode例外がスローされます。
コードは以下のようにPythonNodeにISelectionをキャストしようとしている:
IStructuredSelection sel = (IStructuredSelection)
window.getSelectionService().getSelection();
ArrayList<String> testNames = new ArrayList<String>();
Iterator<?> itr = sel.iterator();
String testName = "";
String testSuite = "";
while(itr.hasNext()) {
PythonNode selectionElement = (PythonNode) itr.next();
testName = selectionElement.toString();
testSuite = selectionElement.pythonFile.toString();
testNames.add(testSuite + "." + testName);
}
例外が実行時にPythonNodeクラスを使用するためにスローされている理由を誰もが説明できるなら、私は非常に感謝することでしょう。私が見る限り、Referenced Librariesに表示されているとおり、正しくインポートされます。
PythonNodeはクラスパスに含まれていないそのアーカイブ内の他のクラスを参照していますか? –
正直な答えは分かりません。私はそれが見つからない別のクラスであればスタックトレースに現れたと仮定していました。 – bmooney