Как я могу использовать внешние JAR-файлы в проекте Android? - PullRequest
323 голосов
/ 26 августа 2009

Я создал проект Android и добавил внешний JAR (hessian-4.0.1.jar) в свой проект. Затем я добавил JAR в путь сборки и отметил его в Order and Export.

Похоже, что порядок и экспорт игнорируются, и все классы из внешнего JAR отсутствуют во время выполнения.

Есть ли хитрость для правильного включения необходимых классов из внешнего JAR при создании приложения для Android с использованием плагина Eclipse? Я не хочу использовать муравья или мавена.

Ответы [ 12 ]

0 голосов
/ 31 октября 2015

Копирование файла .jar в папку проекта Android не всегда возможно.
Особенно, если это выход другого проекта в вашей рабочей области, и он постоянно обновляется.

Чтобы решить эту проблему, вам нужно будет добавить jar как связанный файл в ваш проект, вместо того, чтобы импортировать его (который будет копировать его локально).

В интерфейсе выберите:

Проект -> Импорт -> Файловая система -> yourjar.jar -> (Область параметров) Дополнительно -> Создать ссылку в рабочей области.

Ссылка сохраняется в файле .project :

<linkedResources>
    <link>
        <name>yourjar.jar</name>
        <type>1</type>
        <locationURI>PARENT-5-PROJECT_LOC/bin/android_ndk10d_armeabi-v7a/yourjar.jar</locationURI>
    </link>
</linkedResources>

PARENT-5-PROJECT_LOC означает относительно файла проекта, 5 каталогов вверх (../../../../../).

Затем добавьте его в библиотеки:
Проект -> Свойства -> Путь сборки Java -> Библиотеки -> Добавить Jar -> yourjar.jar

В этом же окне выберите вкладку Порядок и экспорт и отметьте свою банку, чтобы она была добавлена ​​в apk.

0 голосов
/ 24 января 2013

создайте папку (например, lib) внутри вашего проекта, скопируйте свой jar в эту папку . Теперь перейдите к Настройка пути сборки Щелкните правой кнопкой мыши по проекту, там в Путь сборки выберите

add jar перейдите к созданной вами папке и выберите банку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...