Как мне заставить работать kXML? - PullRequest
2 голосов
/ 28 января 2010

Я пытаюсь реализовать существующий синтаксический анализатор XML: kXML .

Я столкнулся со следующей ошибкой:

java.lang.NoClassDefFoundError: org/xmlpull/v1/XmlPullParserException
 at com.sun.midp.midlet.MIDletState.createMIDlet(+29)
 at com.sun.midp.midlet.Scheduler.schedule(+52)
 at com.sun.midp.main.Main.runLocalClass(+28)
 at com.sun.midp.main.Main.main(+80)
Execution completed.

На этом сайте вы можете найти ошибку, с которой я столкнулся. Решение, однако, не работает. Я использовал следующий скрипт:

C:\WTK2.5.2_01\bin\preverify -classpath .;C:\java_libraries\wirelesstoolkit\midpapi20.jar org.kxml2.io.KXmlParser
C:\WTK2.5.2_01\bin\preverify -classpath .;C:\java_libraries\wirelesstoolkit\midpapi20.jar org.kxml2.io.KXmlSerializer
C:\WTK2.5.2_01\bin\preverify -classpath .;C:\java_libraries\wirelesstoolkit\midpapi20.jar org.xmlpull.v1.XmlPullParser
C:\WTK2.5.2_01\bin\preverify -classpath .;C:\java_libraries\wirelesstoolkit\midpapi20.jar org.xmlpull.v1.XmlPullParserException
C:\WTK2.5.2_01\bin\preverify -classpath .;C:\java_libraries\wirelesstoolkit\midpapi20.jar org.xmlpull.v1.XmlPullParserFactory
C:\WTK2.5.2_01\bin\preverify -classpath .;C:\java_libraries\wirelesstoolkit\midpapi20.jar org.xmlpull.v1.XmlSerializer

cd output

C:\Program Files\Java\jdk1.6.0_14\bin\jar -cvf ..\kxml2.jar org

Я получаю следующие ошибки (множество из них):

C:\Users\****\Desktop\kxmlfolder>C:\WTK2.5.2_01\bin\preverify -classpath .;C:\
java_libraries\wirelesstoolkit\midpapi20.jar org.kxml2.io.KXmlParser
Error preverifying class org.xmlpull.v1.XmlPullParser
    java/lang/NoClassDefFoundError: java/lang/Object

C:\Users\****\Desktop\kxmlfolder>C:\WTK2.5.2_01\bin\preverify -classpath .;C:\
java_libraries\wirelesstoolkit\midpapi20.jar org.kxml2.io.KXmlSerializer
Error preverifying class org.xmlpull.v1.XmlSerializer
    java/lang/NoClassDefFoundError: java/lang/Object

В чем может быть причина?

Ответы [ 5 ]

3 голосов
/ 28 января 2010

Ваша проблема в том, что вам удалось настроить среду разработки для компиляции вашего мидлета с библиотеками kXML, но вы не включили их в файл jar мидлета, поэтому эмулятор J2ME не знает, как найти классы, импортированные из вашего мидлета. во время выполнения.

1 голос
/ 28 апреля 2011

В eclipse просто щелкните правой кнопкой мыши на имени проекта, выберите свойства, выберите Java Build Path, перейдите в ORDER & EXPORT и нажмите на внешний файл jX kXml, который будет включен вместе с файлом jar вашего проекта. Это должно работать.

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

Вам необходимо связать kxml-source в настройках buildpath. Мне было очень тяжело 3 дня, чтобы понять это.

1 голос
/ 29 января 2010

Может быть, вам стоит включить библиотеку kXml. Если вы используете eclipse MTJ, просто щелкните правой кнопкой мыши на имени проекта, выберите свойства, выберите Java Build Path в списке, щелкните правой кнопкой мыши выберите библиотеки, добавьте внешнюю кнопку jar, найдите и выберите файл kXml.jar. Теперь вы увидите новую библиотеку. Попробуйте снова запустить проект.

0 голосов
/ 27 января 2012

Я надеюсь, что мой вывод как-то связан: Проходя учебник по XStream http://x -stream.github.io / tutorial.html Я получил то же сообщение об ошибке. Я обнаружил, что мне нужно было включить kxml2- [version] .jar (приведенный в комплекте), а не kxml2-min- [version] .jar, как указано в руководстве. Поэтому, следуя сказанному QuickRecipesOnSymbian, я думаю, что правильная банка должна иметь решающее значение.

...