Eclipse RunTime NoClassDefFoundError - PullRequest
       6

Eclipse RunTime NoClassDefFoundError

1 голос
/ 07 февраля 2011

У меня возникают проблемы при попытке использовать импортированный класс из файла jar, который находится в ссылочных библиотеках моего проекта.

Итак, у меня есть проект, в котором есть файл pydev.jar в ссылочных библиотеках,Pydev.jar содержит org.python.pydev.navigator.elements.PythonNode, и я импортировал это в один из файлов Java.Eclipse не выдает ошибки, когда я импортирую и использую это в файле Java, но когда я запускаю проект как приложение 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 во время выполнения, я был быочень признателенНасколько я вижу, он импортирован правильно, так как он виден в ссылочных библиотеках.

1 Ответ

2 голосов
/ 07 февраля 2011

Я думаю, что вы создаете Eclipse RCP или Eclipse плагин. Я прав?

Если да, вы должны поместить pydev.jar в зависимости от плагина. Перейдите в plugin.xml, Runtime и поместите pydev.jar в classpath

...