2013-12-16 2 views
7

Я установил кордовую телефонную разницу по телефону npm install -g cordova и npm install -g phonegap соответственно. Затем я создал приложение HelloWorld через . Создайте HelloWorld mynamespace.helloworld HelloWorld. Все прошло отлично! Затем я сменил свой рабочий каталог на HelloWorld, и я попытался создать приложение для андроида через платформу кордовы , добавив android -d, но это не сработало. вот выход:Произошла ошибка во время создания подпроекта андроида

Installing cordova library for android... 
Requesting {"uri":"https://git-wip-us.apache.org/repos/asf?p=cordova-android.git;a=snapshot;h=3.3.0;sf=tgz"}... 
Downloading cordova library for android... 
Downloaded, unzipped and extracted 541065 byte response. 
Download complete 
Installing cordova library for android... 
Checking if platform "android" passes minimum requirements... 
Creating android project... 
Running bin/create for platform "android" with command:  ""C:\Users\marcos.pacheco\.cordova\lib\android\cordova\3.3.0\bin\create" "C:\Dev\HelloWorld\platforms\android" "mynamespace.helloworld" "HelloWorld"" (output to follow) 


C:\Users\marcos.pacheco\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:126 
       throw e; 
        ^
Error: An error occured during creation of android sub-project. 

at C:\Users\marcos.pacheco\AppData\Roaming\npm\node_modules\cordova\src\platform.js:244:30 
at exithandler (child_process.js:633:7) 
at ChildProcess.errorhandler (child_process.js:649:5) 
at ChildProcess.EventEmitter.emit (events.js:95:17) 
at Process.ChildProcess._handle.onexit (child_process.js:787:12) 

Я гугл и нашел некоторые проблемы с непечатаемыми но мой проект находится в C: \ Dev \ HelloWorld путь и мой Android SDK находится в PATH так, что когда я напечатаю adb в приглашении Windows, я получу справочную информацию о команде, а также Java и Ant. Кроме того, у меня есть ANT_HOME, JAVA_HOME и ANDROID_HOME комплект. Я также удалил папку ** .cordova ** внутри моего каталога % HOMEPATH% и снова ввел команду, но ошибка все еще существует.

Что может быть неправильным?

+0

Что произойдет, если вы наберете «андроид "в командной строке? Открывает ли он диспетчер SDK и показывает, что у вас установлены инструменты и инструменты для платформы? Можете ли вы набрать «андроид», затем «Инструменты» -> управлять AVD -> (создать новый AVD, если их там нет)? Добавили ли вы каталог 'node_modules' на ваш путь? – MBillau

+0

@MBillau Когда я набираю android в командной строке , он показывает следующее сообщение: «xcopy» не распознается как внутренняя или внешняя команда, операционная программа или командный файл. ОШИБКА: папка SWT 'lib \ x86_64' не существует. Пожалуйста, установите ANDROID_SWT, чтобы указать на папку, содержащую swt.jar для вашей платформы. ' –

+1

Ну XCOPY определенно нужно найти, потому что он используется многими этими файлами node.js. Если вы наберете «where xcopy», он должен распечатать файл IF xcopy. Если вы наберете «xcopy» и не получите что-нибудь, вам нужно будет скачать xcopy.exe откуда-нибудь, а затем добавить его на свой путь. Странно, что вы не установили xcopy, хотя, возможно, каким-то образом он был удален или никогда не был добавлен в ваш PATH. Можете ли вы вставить ваша переменная PATH, пожалуйста? – MBillau

ответ

2

XCOPY необходимо определить и найти на вашем пути, поскольку он используется внутренними скриптами node.js для перемещения вещей.

Возможно, у вас уже есть xcopy.exe где-то на вашей машине. Вы должны добавить %SystemRoot%\System32 в свою ПУТЬ, и он будет работать. Или вы можете открыть терминал и ввести where xcopy, чтобы увидеть фактический путь к вашему xcopy.exe.

Я думаю, с XCOPY по пути является необходимым условием для создания и установки Android, но было бы хорошо, если Кордова проверил, что у вас есть XCOPY где-то ...

+0

Может у, пожалуйста, объясните это ..? Я бы «где xcopy» и нашел его в «C: \ Windows \ System32 \ xcopy.exe'. Поэтому я добавил '; C: \ Windows \ System32' в свою переменную PATH. Но все равно такая же ошибка. – shashwat

+0

Привет @shashwat, вы уверены, что получаете такую ​​же ошибку в xcopy? Вы используете что-то особенное для своей командной строки? можете ли вы повторить PATH в зависимости от того, что вы используете для оболочки (mysgit, или cmd или что-то еще) и посмотреть, не является ли это одним и тем же PATH? Если вы находитесь в Windows 7, может возникнуть вопрос, какой пользователь (пользователь или администратор) вы используете для установки переменной окружения ... – MBillau

Смежные вопросы