Помилка виконання команди "мураха" на Mac OS X 10.9 Mavericks під час створення для Android з PhoneGap / Cordova


139

Сьогодні я спробував PhoneGap / Cordova з Mac OS X Mavericks . Створення для iOS пройшло чудово, але створення Android не обійшлося без певних здогадок.

Я встановив Android 4.2.2 з допомогою Android SDK Manager (я повинен був використовувати старий API V17 , так як вона не сумісна з більш нової), додав PATH environment variablesдо SDK, platform-toolsі , toolsі думав , що я був готовий злетіти, виконавши команду :

phonegap run android

Тим не менш, я отримав таку помилку:

[phonegap] detecting Android SDK environment...
[phonegap] using the local environment
[phonegap] adding the Android platform...
[error] An error occured during creation of android sub-project. ERROR : executing command 'ant', make sure you have ant installed and added to your path.

3
Те саме відбувається і зі мною ... Встановлення через заварку вирішило це!
Себастьян

Я перейшов до / bin Folder, і досі у мене була така ж команда не знайдено Проблема, встановлення її з brew допомогло, я все ще не розумію, чому вона раніше не працювала, якщо я запускаю ant -v з папки bin, яку мені не потрібно встановлювати Навколишнє середовище варіабельне, це так дивно ...
LoveMeow

Відповіді:


361

Повідомлення про помилку виявилося правдивим, оскільки Apache Ant вже не йде на шлях Mac OS X Mavericks.

Куленепробивне рішення:

  1. Завантажте та встановіть Homebrew, виконавши наступну команду в терміналі:

    ruby -e "$ (curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install )"

  2. Встановіть Apache Ant через Homebrew, виконавши

    заварити встановити мурашник

Запустіть збірку PhoneGap ще раз, і вона повинна успішно скласти та встановити додаток для Android.


1
Те саме. Ваше рішення було легко та чудово. Добре відповів!
Йоаким Віммерштедт

6
Мураха зараз знаходиться в домашньому ядрі. Просто використовуйтеbrew install ant
meaku

3
ОНОВЛЕННЯ КОМАНДИ: ruby ​​-e "$ (curl -fsSL raw.github.com/mxcl/homebrew/go/install )"
Фелікс

1
Не забудьте виконати "заварювати лікаря" після встановлення заварки і перед використанням варіння встановити мурашник.
Wytze

10
Не забувайте brew updateперед тим, як використовувати його, якщо у вас вже встановлений домашній ....
Christos Hrousis,

45

Ви можете встановити ANT через macports або homebrew.

Але якщо ви хочете обійтися без сторонніх менеджерів пакетів, проблему можна просто вирішити, завантаживши бінарний реліз із веб-сайту apache ANT та додавши бінарне в вашу систему PATH.


Наприклад, на Mountain Lion, в ~/.bash_profileі ~/.bashrcмій шлях був налаштувати так:

export ANT_HOME="/usr/share/ant"
export PATH=$PATH:$ANT_HOME/bin

Тому після розпакування apache-ant-1.9.2-bin.tar.bz2я перемістив отриманий каталог /usr/share/і перейменував його ant.

Проста, проблема виправлена.


Примітка Не забувайтеsudo chown -R root:wheel /usr/share/ant


Я зробив щось дуже схоже, оскільки не використовую домашню мову або макпорти, а на моєму шляху я також нічого не мав на своєму шляху. Я завантажив двійковий реліз, розпакував його і створив папку під назвою ant в / usr / local, потім скопіював з нерозпакованої бінарної папки bin and lib в / usr / local / ant, після чого додав / usr / local / ant / bin в ваш термінал і термінал перезапуску, і все було золотим, просто зробіть те, що сказав Coyote, і у вас буде оператор телефонепу CLI в найкоротші терміни.
Роберт-Ш

1
Це має бути прийнятою відповіддю. Похилий і чистий. Встановіть те, що вам потрібно. Використання Apache Ant займає лише 2 хвилини встановлення.
Мішель

28

Як альтернатива домашній мові, ви можете завантажити та встановити макпорти . Отримавши макпорти, ви можете використовувати:

sudo port install apache-ant


1
@ Goaler444: Ви використовуєте стару версію макпортів? Спробуйте port search antшукати Apache Ant.
Джон Марк

Так, саме це було, оновлено порти, ввівши «sudo port -v selfupdate», і це спрацювало. Дякую :)
Goaler444

@JohnMark я все одно отримую таку ж помилку, будь ласка, допоможіть. я стежив за згаданим вами процесом, чи потрібно мені інсталювати будь-який інший
Чаран Гірі

Є чи antна вашому шляху? Якщо ви набираєте which antтермінал, отримуєте щось?
Джон Марк

@JohnMark дякую за відповідь, коли я набрав, який мураш я отримав "/ usr / local / bin / ant"
Charan Giri

21

йому не потрібен порт і варити! тому що у вас пакет Android sdk.

.1 відредагуйте .bash_profile

export ANT_HOME="[your android_sdk_path/eclipse/plugins/org.apache.ant_1.8.3.v201301120609]" 

// its only my org.apache.ant version, check your org.apache.ant version

export PATH=$PATH:$ANT_HOME/bin

.2 зробити команду ant, яка може виконуватися

chmod 770 [your ANT_HOME/bin/ant]

.3 перевірити, якщо ви бачите нижче повідомлення. ось успіх!

виконання командного рядка: ant

Buildfile: build.xml не існує!

Помилка побудови


Мій Eclipse встановлений в іншому місці. Після налаштування ANT_HOME="/Applications/eclipse/plugins/orig.apache.ant_1.8.3.v201301120609"це спрацювало!
Мішель

14

Я зіткнувся з тим же питанням, коли намагався використовувати Кордову. Виявляється, я вже варив, спробуйте which brew, але він застарів. Отже, мені довелося спочатку оновити його:

  1. Оновити заварку: brew update
  2. Встановити мурашник Apache: brew install ant

7

У моєму випадку макспорт вже встановлений. Я просто оновив свій макспорт:

sudo port selfupdate

sudo port upgrade outdated

Потім встановіть apache-ant:

sudo port install apache-ant

Нарешті, я додаю мурашник до мого списку псевдонімів у своєму .bash_profile:

alias ant='/opt/local/bin/ant'

Тоді ви все налаштовані.


3

Для OSX ваш шлях повинен включати /Users/yourusername

їх приклад: /Development/adt-bundle/sdk/platform-tools
повинен бути: /Users/yourusername/Development/adt-bundle/sdk/platform-tools

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.