【发布时间】:2011-02-07 15:29:54
【问题描述】:
我在尝试使用来自项目引用库中的 jar 文件的导入类时遇到问题。
所以我有一个项目,它在引用库中有 pydev.jar 文件。 Pydev.jar 包含 org.python.pydev.navigator.elements.PythonNode,我已将其导入到其中一个 Java 文件中。当我在 Java 文件中导入和使用它时,Eclipse 不会给出错误,但是当我将项目作为 Eclipse 应用程序运行时,会抛出 java.lang.NoClassDefFoundError: org/python/pydev/navigator/elements/PythonNode 异常。
代码正在尝试将 ISelection 转换为 PythonNode,如下所示:
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 类会引发异常,我将不胜感激。据我所知,它已正确导入,因为它在引用的库中可见。
【问题讨论】:
-
PythonNode 是否引用了该存档中未包含在类路径中的其他类?
-
我不知道是诚实的答案。我假设如果它是另一个未找到的类,它会出现在堆栈跟踪中。
标签: java eclipse pydev noclassdeffounderror