2012-05-23 4 views
0

У меня есть проект Android с некоторыми классами, которые я бы хотел сжать в JAR.Создание .jar в Android

Я создаю JAR, щелкнув правой кнопкой мыши мой проект - export - JAR - и JAR создается без каких-либо предупреждений.

я могу получить доступ ко всем классам из JAR в моем коде, но когда я пытаюсь построить проект получаю это исключение:

java.lang.NoClassDefFoundError: name.of.class.in.package 

Кто-нибудь знает, какие ресурсы должны быть экспортированы с JAR? Возможные варианты:

.class path 
.prject 
AndroidManifest.xml 
proguard.cfg 
project.properties 

Right now I have included all of the above. 

Создание JAR в проект библиотеки не является вариантом. И только для того, чтобы это было ясно, у меня нет ничего в папке RES моего проекта JAR.

+0

Как вы вложили свой JAR в свой проект? – nhaarman

+0

Вы используете внешние библиотеки, такие как карты или javax? –

+0

http://stackoverflow.com/questions/9857539/noclassdeffounderror-when-googleanalyticstracker-getinstance/9857669#9857669 – Akram

ответ

0

Откройте свойства проекта -> Java Build Path -> Порядок экспорта и проверить предмет Android Зависимости проверяются на экспорт в результате APK.

И если .jar существует на вкладке Библиотека в разделе «Зависимости Android».

Если у вас есть .jar в папке «libs», он должен быть включен по умолчанию.

+0

Это было здорово, спасибо. – Slickelito

0

Просто добавьте ваш JAR к пути к классам или построить свой проект с Maven и включают в зависимости

0

Попробуйте создать банку по-другому. В основном jar - это заархивированный файл всех файлов классов с расширением .jar.

  1. Выберите все файлы своего класса, которые должны быть включены в файл jar.
  2. Щелкните правой кнопкой мыши и отправьте сжатый (Zip-файл).
  3. у вас будет зашифрованный файл, который будет содержать все файлы классов.
  4. Переименуйте этот архивный файл с наличием расширение .jar

Теперь включить этот файл в баночку вашего проекта в зависимости от того вы хотите использовать.

Или, если вы хотите заархивировать все файлы другим способом, убедитесь, что все файлы сжаты вместе без папки. Поэтому, когда вы разархивируете файлы, вы должны получить все файлы, не содержащиеся в папке.

0

Он похож на тему this. Следуйте очень четким инструкциям, написанным Русом Бэйтменом.

+0

Оказывается, вы можете сделать это так или просто убедитесь, что Android Dependencies отмечены для экспорта в разделе «Заказ и экспорт». – Slickelito

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