it-swarm.com.ru

Ионная сборка Android, Ошибка: spawn EACCES

Если я буду следовать этим шагам, чтобы создать новое приложение:

Rubens-MacBook-Pro:~ rlopez$ npm install -g cordova ionic
Rubens-MacBook-Pro:~ rlopez$ ionic start myApp tabs
Rubens-MacBook-Pro:~ rlopez$ cd myApp
Rubens-MacBook-Pro:myApp rlopez$  ionic platform add [email protected] //6.1.x has a bug
Rubens-MacBook-Pro:myApp rlopez$  ionic build Android

Я получаю этот вывод:

> [email protected] ionic:build /Users/rlopez/Proyectos/sfp-concursaPy
> ionic-app-scripts build

[15:13:28]  ionic-app-scripts 1.1.4 
[15:13:28]  build dev started ... 
[15:13:28]  clean started ... 
[15:13:28]  clean finished in 3 ms 
[15:13:28]  copy started ... 
[15:13:28]  transpile started ... 
[15:13:31]  transpile finished in 2.96 s 
[15:13:31]  preprocess started ... 
[15:13:31]  preprocess finished in less than 1 ms 
[15:13:31]  webpack started ... 
[15:13:31]  copy finished in 3.17 s 
[15:13:41]  webpack finished in 9.26 s 
[15:13:41]  sass started ... 
[15:13:41]  sass finished in 897 ms 
[15:13:41]  postprocess started ... 
[15:13:41]  postprocess finished in 1 ms 
[15:13:41]  lint started ... 
[15:13:41]  build dev finished in 13.15 s 
[15:13:43]  lint finished in 2.04 s 
Android_HOME=/Users/rlopez/Library/Android/sdk

Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home

Error: spawn EACCES

Запуск ионной информации дает следующее:

Your system information:

Cordova CLI: 6.5.0 
Ionic Framework Version: 3.1.1
Ionic CLI Version: 2.2.3
Ionic App Lib Version: 2.2.1
Ionic App Scripts Version: 1.3.6
ios-deploy version: 1.8.5 
ios-sim version: 5.0.13 
OS: OS X El Capitan
Node Version: v6.10.1
Xcode version: Xcode 7.3.1 Build version 7D1014

Что я делаю неправильно? Это ошибка в Ionic?

[Правка]

Запуск ionic build Android --verbose дает следующий вывод:

Running command: "/Applications/Android Studio 2.4 
Preview.app/Contents/gradle/gradle-3.4.1/bin/gradle" -p 
/Users/rlopez/myApp/platforms/Android wrapper -b 
/Users/rlopez/myApp/platforms/Android/wrapper.gradle

Error: spawn EACCES
    at exports._errnoException (util.js:1018:11)
    at ChildProcess.spawn (internal/child_process.js:319:11)
    at Object.exports.spawn (child_process.js:378:9)
    at exports.spawn(/Users/rlopez/myApp/platforms/Android/cordova/node_modules/cordova-common/src/superspawn.js:134:31)
    at GradleBuilder.runGradleWrapper(/Users/rlopez/myApp/platforms/Android/cordova/lib/builders/GradleBuilder.js:78:14)
    at /Users/rlopez/myApp/platforms/Android/cordova/lib/builders/GradleBuilder.js:178:21
    at _fulfilled (/Users/rlopez/myApp/platforms/Android/cordova/node_modules/q/q.js:854:54)
    at self.promiseDispatch.done (/Users/rlopez/myApp/platforms/Android/cordova/node_modules/q/q.js:883:30)
    at Promise.promise.promiseDispatch (/Users/rlopez/myApp/platforms/Android/cordova/node_modules/q/q.js:816:13)
    at /Users/rlopez/myApp/platforms/Android/cordova/node_modules/q/q.js:570:49
35
rubenlop88

Получил ту же ошибку сегодня. Благодаря комментариям выше, вот как я это исправил.

Ран: 

cordova build Android --verbose

и он показал мне, где он получил ошибку «Отказано в доступе» ... В моем случае это было:

Running command: /usr/libexec/Java_home
Command finished with error code 0: /usr/libexec/Java_home
Android_HOME=/Users/mj/phonegap/adt-bundle-mac-x86_64-20140321/sdk
Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home
Running command: "/Applications/Android Studio.app/Contents/gradle/gradle-2.2.1/bin/gradle"
 -p /Users/mj/EduceMobile/app/platforms/Android wrapper -b /Users/mj/EduceMobile/app/platfo
rms/Android/wrapper.gradle

Чтобы исправить, побежал:

Sudo chmod 755 /Applications/Android\ Studio.app/Contents/gradle/gradle-2.2.1/bin/gradle

...а также

...
...
:cdvBuildDebug

BUILD SUCCESSFUL

Total time: 2 mins 44.195 secs

Надеюсь, поможет.

88
Mayank R Jain

Вышеуказанные решения не сработали для меня. Я решил ошибку с этой командой:

chmod 755 platforms/Android/gradlew
15
Patrik

Для тех, кто получает аналогичную ошибку после обновления Android Studio до версии 3.x, вы можете выполнить следующую команду, чтобы исправить ее:

Sudo chmod 755 /Applications/Android\ Studio.app/Contents/gradle/gradle-4.1/bin/gradle

Надеюсь, это поможет!

11
Charlie Ang

Только для OSX --- Перейдите в папку приложений из Finder и просто переименуйте имя пакета приложения Android Studio, удалив пробел между ними.

До: Android Studio После: AndroidStudio

По умолчанию не существует проблем с разрешениями, просто проблема была с пространством.

Ура!

10
Kathan Shah

Просто столкнулся с той же проблемой, и я не думаю, что это имеет какое-либо отношение к Sudo - эта команда просто не имеет разрешения на выполнение

chmod +x hooks/after_prepare/010_add_platform_class.js
7
Vijay Chauhan
Sudo chmod 755 /Applications/Android\ Studio.app/Contents/gradle/gradle-4.1/bin/gradle
6
Basem Olimy

Запуск ionic build Android --verbose дает следующий вывод:

/Applications/Android Studio 2.4 
Preview.app/Contents/gradle/gradle-3.4.1/bin/gradle -p 
/Users/rlopez/myApp/platforms/Android wrapper -b 
/Users/rlopez/myApp/platforms/Android/wrapper.gradle

Error: spawn EACCES
    at exports._errnoException (util.js:1018:11)
    at ChildProcess.spawn (internal/child_process.js:319:11)
    at Object.exports.spawn (child_process.js:378:9)
    at exports.spawn(/Users/rlopez/myApp/platforms/Android/cordova/node_modules/cordova-common/src/superspawn.js:134:31)
    at GradleBuilder.runGradleWrapper(/Users/rlopez/myApp/platforms/Android/cordova/lib/builders/GradleBuilder.js:78:14)
    at /Users/rlopez/myApp/platforms/Android/cordova/lib/builders/GradleBuilder.js:178:21
    at _fulfilled (/Users/rlopez/myApp/platforms/Android/cordova/node_modules/q/q.js:854:54)
    at self.promiseDispatch.done (/Users/rlopez/myApp/platforms/Android/cordova/node_modules/q/q.js:883:30)
    at Promise.promise.promiseDispatch (/Users/rlopez/myApp/platforms/Android/cordova/node_modules/q/q.js:816:13)
    at /Users/rlopez/myApp/platforms/Android/cordova/node_modules/q/q.js:570:49

Изменение разрешений /Applications/Android Studio 2.4 Preview.app/Contents/gradle/gradle-3.4.1/bin/gradle решает проблему.

3
Ricardo Parro

Моя проблема не была разрешениями ... Я не мог найти источник проблемы, но я сделал обходной путь. эта ошибка происходила, когда я пытался добавить плагин, который не был обновлен в новой системе файлов/папок.

cordova platform Android -v

это вернулось -> 8.0.0

То, что я сделал, было:

cordova platform rm Android
cordova platform add [email protected]

а потом:

cordova plugin add <plugin>

Таким образом, установка плагина не показала ошибок ... но имейте в виду, что после команды добавления плагина cordova версия платформы Android автоматически обновилась до 8.0.0 ... поэтому мне пришлось повторить процесс, чтобы добавить другой плагин с та же проблема.

Повторяя этот процесс 2 раза, я наконец запустил проект с 2 установленными плагинами.

2
rickrvo

Мне удалось исправить, выполнив следующую команду в терминале

Sudo chmod 755 "/Applications/Android Studio.app/Contents/gradle/gradle-4.1/bin/gradle"

 enter image description here

После запуска я смог успешно запустить эту команду 

ionic cordova build Android --release 
2
Raghav

У меня была та же проблема, я решил ее, выполнив команду ниже в папке приложения:

ionic hooks add
1
Amine Soumiaa

Я получил отличное решение.

Это проблема новой версии Android Studio. Поэтому понизьте эту версию до 2.3.3 https://developer.Android.com/studio/archive.html

1
Somnath

Изменение разрешений

/ Приложения/Путь к приложению Android Studio/Содержание/gradle/gradle -.. */Бен/Gradle

0
Fadel

выполните команду cordova с параметром --verbose. Не добавляйте префикс команды к ионному кордову. Это скажет вам, где проблема доступа. Для меня это была проблема, когда gradlew был установлен в моей системе без прав на выполнение. Как только я добавил возможность выполнения в gradlew, ошибка доступа исчезла.

0
Eric G

это вопрос разрешения chmod cmd поможет вам 

шаг 1: использовать cmd Sudo cordova run Android --verbose 

шаг 2: найдите ниже строки, она может варьироваться в зависимости от места установки:

/Applications/Android Studio.app/Contents/gradle/gradle-4.1/bin/gradle

шаг 3: запустить cmd с вашим местоположением 

Sudo chmod -R 777 /Applications/Android\ Studio.app

шаг 4: запустить cmd cordova build Android

0
gsm