Помилка виконання команди "мураха" на 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.