Maven ищет неправильный каталог для инструментов Android - как я могу это исправить? - PullRequest
0 голосов
/ 29 августа 2011

Я следовал приведенным здесь инструкциям - я хочу собрать helloworld.apk и, как правило, приступить к разработке под Android / Maven.

https://github.com/akquinet/android-archetypes/wiki

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

Embedded error: ANDROID-040-001: Could not execute: Command = /bin/sh -c cd /home/sal/workspace/foo5 && /home/sal/opt/android-sdk-linux_x86/platforms/android-8/tools/aapt/package -m -J /home/sal/workspace/foo5/target/generated-sources/r -M /home/sal/workspace/foo5/AndroidManifest.xml -S /home/sal/workspace/foo5/target/generated-sources/combined-resources/res -I /home/sal/opt/android-sdk-linux_x86/platforms/android-8/android.jar, Result = 127
[INFO] ------------------------------------------------------------------------

Она ищет утилиту aapt в устаревшем месте. Кажется, я помню, что в старых версиях Android SDK имелся каталог инструментов для каждой доступной платформы. Это было изменено, так что есть общая папка tools и platform-tools.

Как заставить maven использовать правильные папки.

Одно из решений - просто скопировать все инструменты в одну грязную папку, но наверняка есть более элегантный способ сделать это?

Обновление 0: у меня уже установлен путь SDK ...

<properties>
    <outputDirectory>target/classes</outputDirectory>
    <!-- Path to the sdk in the file system -->
    <sdkPath>/home/sal/opt/android-sdk-linux_x86</sdkPath>
</properties>

Ответы [ 2 ]

1 голос
/ 30 августа 2011

Лучший способ сделать это - установить переменную среды ANDROID_HOME. Тогда вам не нужно ничего устанавливать в файле pom.xml

Если вы настаиваете на использовании pom, вы должны установить переменную sdk.path в элементе конфигурации плагина maven android, а не как общее свойство.

А если у вас все еще есть проблемы, спросите в списке рассылки для разработчиков приложений для Android.

Еще одна вещь, которую вы должны проверить, это то, что вы используете последнюю версию плагина.

0 голосов
/ 29 августа 2011

Если он генерирует конфигурацию для maven-android-plugin, попробуйте установить:

<properties><sdk.path>...</sdk.path></properties> 
...