2012-04-10 3 views
1

У меня есть небольшая проблема с импортом проекта в мой проект андроида.Как выполнить банку, которая использует другую банку

Я построил небольшую библиотеку, используя Ical4Java для анализа файла .ical, и эта библиотека экспортируется в .jar.

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

Но когда я бег моего приложения это просто сбой, и я получаю это на LogCat:

E/AndroidRuntime(14382): java.lang.NoClassDefFoundError: net.fortuna.ical4j.data.CalendarBuilder 

Этой библиотека (ical4j.jar) импортируются в библиотеке buildpath и экспортируется ти моей библиотеки (MyLibrary. jar).

ответ

1

mylibrary.jar исполняемый файл jar?

Если это так, вы не можете ссылаться на внешние банки.

+0

Нет, это просто файл .jar – rafuru

+0

Хорошо, тогда см. Ответ @ j13r. – Dave

1

Просто поместите содержимое одной банки в другую банку (объедините их). Это всего лишь zip-файлы.

+0

hmm Извлечь содержимое всех 17 файлов .jar и просто разместить их на "mylibrary.jar"? – rafuru

+0

@rafuru: Да, если вы используете Eclipse, это будет сделано для вас, когда вы используете функцию Export To Jar (я думаю, это то, что она называется). – Dave

+0

Да, в моем проекте библиотеки я использую Export-> jar file ... , а также включает все использованные баночки, но на андроиде я получаю, что NoClassDefFoundError .. – rafuru

2

Вы можете использовать One-Jar, чтобы помочь вам использовать файл jar, который зависит от других файлов jar. В основном вы можете объединить их в один файл jar.

Немного tutorial, чтобы помочь вам.

Смежные вопросы