Как преобразовать проект библиотеки Android во внешний JAR? - PullRequest
21 голосов
/ 02 ноября 2011

У меня есть проект библиотеки Android, который работал для меня довольно хорошо, но теперь мне интересно «преобразовать» его во внешний JAR.

Как мне это сделать?

* 1004Может ли любой проект библиотеки Android быть преобразован во внешний JAR?Если нет, каковы ограничения или ограничения?

Ответы [ 2 ]

29 голосов
/ 02 ноября 2011

Может ли любой проект библиотеки Android быть преобразован во внешний JAR?

Не сейчас.

Если нет, каковы ограничения или ограничения?

Если ваша библиотека представляет собой чисто Java-код без ресурсов, вы можете создать JAR-файл из файлов .class, как если бы вы использовали обычную Java.

Если ваша библиотека использует ресурсы, вы все равно можете создать JAR, как указано выше. Однако вам нужно будет найти значения R (например, R.layout.main) с помощью отражения или getIdentifier(), и ваши ресурсы не будут упакованы в JAR, но должны будут распределяться отдельно.

В будущем инструменты сборки должны поддерживать создание распространяемых JAR-файлов из библиотечных проектов, дополненных ресурсами. Текущие инструменты сборки создают JAR-файлы, но они не предназначены для распространения, а являются скорее внутренними артефактами сборки на данный момент.

2 голосов
/ 02 ноября 2011

http://developer.android.com/guide/developing/projects/index.html#LibraryProjects утверждает, что вы не можете экспортировать их во внешний JAR. Конкретная цитата:

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

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