Сборка андроид проекта с муравьем - PullRequest
2 голосов
/ 30 марта 2012

Я пытаюсь построить свой проект Android с помощью муравья в режиме командной строки. Он работает с eclipse и раньше работал с ant, пока я не установил последнюю версию Android SDK.

Я бегу ant release -buildfile projectdir\build.xml. Процесс компиляции в порядке, и после выравнивания apk происходит сбой во время выполнения с ClassDefNotFoundError acra.ACRA. Я попытался удалить любую ссылку на acra из проекта, но он потерпит неудачу во время выполнения при попытке выполнить любой код, поступающий из jar библиотеки.

Мои банки находятся в папке libs в корне проекта. И я вроде понял, что это заставит муравья связать их в apk. Но это не так.

Когда я использовал предыдущую версию Android SDK, у меня был файл с именем build.properties с атрибутом, ссылающимся на папку jars external.libs.dir=libs. Но теперь я не могу заставить это работать, даже если я использую новые имена атрибутов jar.libs.dir=libs и имя нового файла атрибутов ant.properties.

Я прочитал, что ClassDefNotFoundError вызван, потому что во время компиляции библиотеки найдены, но они не связаны в apk, поэтому их нельзя найти во время выполнения. Как мне связать внешние jar в apk пожалуйста?

1 Ответ

2 голосов
/ 30 марта 2012

Процесс компиляции в порядке, и после выравнивания apk происходит сбой во время выполнения с ClassDefNotFoundError acra.ACRA

В ACRA нет класса acra.ACRA, по крайней мере, в текущей редакции. Это org.acra.ACRA.

Мои файлы находятся в папке libs в корне проекта. И я вроде понял, что это заставит муравья связать их в apk. Но это не так.

Да, это так. Затем ProGuard удаляет их, , если вы не научите ProGuard не .

...