无法建立在Visual Studio科尔多瓦项目 [英] Unable to build Cordova project in Visual Studio

查看:172
本文介绍了无法建立在Visual Studio科尔多瓦项目的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在使用Visual Studio 2013和科尔多瓦CTP 1.1。当我尝试生成项目,我得到以下神秘的错误(换行增加了可读性):

 错误22
该命令C:\用户\弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA \ VS-CLI
prepare --platform的Andr​​oid --configuration调试
--projectDir。 --projectNameservermon退出,code 8。
C:\用户\弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA-目标\ Microsoft.MDA.targets 115 5 servermon
 

我试着从<一个解决方案href="https://stackoverflow.com/questions/23668519/an-error-occurred-building-visual-studio-cordova-app-using-multi-device-hybrid-a">this 以及<问题href="https://stackoverflow.com/questions/23849006/visual-studio-empty-cordova-multi-device-hybrid-app-build-failure-error-$c$c-8?rq=1">this问题和这似乎不是解决这个问题。我的系统路径似乎有相关的所有内容:

  C:\ Program Files文件\的Java \ jdk1.7.0_60 \ BIN
C:\用户\弥敦道\应用程序数据\本地\机器人\ Android的SDK \工具
C:\用户\弥敦道\应用程序数据\本地\机器人\ Android的SDK \平台工具
C:\ Apache的ANT-1.9.3 \ BIN
C:\ Program Files文件(x86)的\ NVIDIA公司\ PhysX物理\共同
C:\ WINDOWS \ SYSTEM32
C:\ WINDOWS
C:\ WINDOWS \ SYSTEM32 \ WBEM
C:\ WINDOWS \ SYSTEM32 \ WindowsPowerShell \ V1.0 \
C:\ Program Files文件(x86)的\的Windows套件\ 8.1 \ Windows性能工具包\
C:\ Program Files文件\ Microsoft SQL Server的\ 110 \ TOOLS \ BINN \
C:\ Program Files文件(x86)的\的Windows Live \共享
C:\ Program Files文件\微软\ Web平台安装程序\
C:\ Program Files文件(x86)的\ nodejs \
C:\ Program Files文件(x86)的\微软的SDK \打字稿\ 1.0 \
 

我也打开了SDK管理器,并确保获得最新版本(版本19)构建工具。该系统已经重新启动多次,我还没有能够建立。有没有人对如何解决这一问题建立任何想法?

编辑:这是我的SDK管理器截图

EDIT2:下面是生成输出

  1&GT; ------生成开始:项目:servermon,配置:Android的调试------
1&GT; C:\ Program Files文件(x86)的\的MSBuild \微软\ VisualStudio中\ 12.0 \打字稿\ Microsoft.TypeScript.targets(90,5):警告:打字稿编译器没有给出任何文件进行编译,所以它会跳过编译。
1&GT;你的环境已经设置为使用Node.js的0.10.26(IA32)和故宫。
1&GT; ------确保包装正确全球安装的源码包目录:C:\ Program Files文件(x86)的\微软的Visual Studio 12.0 \ Common7 \ IDE \扩展\ al3uox1v.u2n \包\ VS-MDA
1&GT; ------生成设置:
1&GT; ------ buildCommand:prepare
1&GT; ------平台:Android的
1&GT; ------ cordovaPlatform:机器人
1&GT; ------配置:调试
1&GT; ------ cordovaConfiguration:调试
1&GT; ------项目名称:servermon
1&GT; ------ projectSourceDir:C:\用户\弥敦道\文档\ CordovaTest \ cordovatest \ cordovatest
1&GT; ------应用程序目录C:\用户\弥敦道\文档\ CordovaTest \ cordovatest \ cordovatest \ BLD \调试已经存在
1&GT; ------复制应用程序文件到www
1&GT; ------完成复制应用程序文件到www
1&GT; ------复制资源文件
1&GT; ------完成复制资源文件
1&GT; ------ Android平台已经存在
1&GT; ------证书复印件从C:\用户\弥敦道\文档\ CordovaTest \ cordovatest \ cordovatest \水库\证书\到的android平台\机器人
1&GT; ------完成复制证书文件到平台\机器人
1&GT;
1&GT; C:\ Users \用户弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA \ node_modules \ Q \ q.js:126
1&GT;扔ê;
1&GT; ^
1&GT; CordovaError:提供的路径C:\用户\弥敦道\文档\ CordovaTest \ cordovatest \ cordovatest \ BLD \调试\平台\机器人不是一个Android项目。
1&GT;在Object.android_parser (C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\node_modules\cordova\src\metadata\android_parser.js:37:15)
1&GT;在C:\用户\弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA \ node_modules \科尔多瓦的\ src \ prepare.js:51:23
1&GT;在Array.map(原生)
1&GT;在对象prepare。(C:\用户\弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA \ node_modules \科尔多瓦的\ src \ prepare.js:49:35)
1&GT;在preparePlatform(C:\用户\弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA \ app.js:322:24)
1&GT;在_fulfilled(C:\用户\弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA \ node_modules \ Q \ q.js:787:54)
1&GT;在self.promiseDispatch.done(C:\ Users \用户弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA \ node_modules \ Q \ q.js:816:30)
1&GT;在Promise.promise.promiseDispatch(C:\ Users \用户弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA \ node_modules \ Q \ q.js:749:13)
1&GT;在C:\用户\弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA \ node_modules \ Q \ q.js:557:44
1&GT;在冲洗(C:\用户\弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA \ node_modules \ Q \ q.js:108:17)
1&GT; C:\用户\弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA-目标\ Microsoft.MDA.targets(115,5):错误MSB3073:命令C:\用户\弥敦道\应用程序数据\漫游\故宫\ node_modules \ VS-MDA \ VS-CLIprepare --platform的Andr​​oid --configuration调试--projectDir。--projectNameservermon退出,code 8。
==========生成:0成功,1失败,0上升到最新,0跳过==========
 

解决方案

这似乎已下载由科尔多瓦在Android模板损坏。

要解决这个问题: 尝试删除缓存的Andr​​oid平台在用户目录:

  C:\用户\&lt;用户名&GT; \科尔多瓦\机器人\ *。
 

然后,清理并生成在Visual Studio中的解决方案。还是要真的确定,删除项目文件夹内的栋目录。

这应该强制科尔多瓦重新下载Android模板并解决问题。

I'm using Visual Studio 2013 and the Cordova CTP 1.1. When I try to build the project, I get the following cryptic error (line breaks added for readability):

Error 22 
The command ""C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\vs-cli"
prepare --platform Android --configuration Debug
--projectDir . --projectName "servermon"" exited with code 8.
C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda-targets\Microsoft.MDA.targets 115 5 servermon

I've tried the solutions from this question as well as this question, and this doesn't appear to solve the issue. My system path appears to have everything relevant in it:

C:\Program Files\Java\jdk1.7.0_60\bin
C:\Users\Nathan\AppData\Local\Android\android-sdk\tools
C:\Users\Nathan\AppData\Local\Android\android-sdk\platform-tools
C:\apache-ant-1.9.3\bin
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common
C:\Windows\system32
C:\Windows
C:\Windows\System32\Wbem
C:\Windows\System32\WindowsPowerShell\v1.0\
C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\
C:\Program Files\Microsoft SQL Server\110\Tools\Binn\
C:\Program Files (x86)\Windows Live\Shared
C:\Program Files\Microsoft\Web Platform Installer\
C:\Program Files (x86)\nodejs\
C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\ 

I've also opened up the SDK manager and made sure to get the latest (Rev 19) build tools. The system has been restarted more than once and I'm still not able to build. Does anyone have any ideas on how to fix this build issue?

Edit: Here is a screenshot of my SDK Manager

Edit2: Here is the build output

1>------ Build started: Project: servermon, Configuration: Debug Android ------
1>C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\TypeScript\Microsoft.TypeScript.targets(90,5): warning : The TypeScript Compiler was given no files for compilation, so it will skip compiling.
1>  Your environment has been set up for using Node.js 0.10.26 (ia32) and npm.
1>  ------ Ensuring correct global installation of package from source package directory: C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\al3uox1v.u2n\packages\vs-mda
1>  ------ Build settings:
1>  ------    buildCommand: prepare
1>  ------    platform: Android
1>  ------    cordovaPlatform: android
1>  ------    configuration: Debug
1>  ------    cordovaConfiguration: Debug
1>  ------    projectName: servermon
1>  ------    projectSourceDir: C:\Users\Nathan\Documents\CordovaTest\cordovatest\cordovatest
1>  ------ App dir C:\Users\Nathan\Documents\CordovaTest\cordovatest\cordovatest\bld\Debug already exists
1>  ------ Copying app files to www
1>  ------ Done copying app files to www
1>  ------ Copying res files
1>  ------ Done copying res files
1>  ------ Platform android already exists
1>  ------ Certificate copy from C:\Users\Nathan\Documents\CordovaTest\cordovatest\cordovatest\res\cert\android to platforms\android
1>  ------ Done copying certificate files to platforms\android
1>  
1>  C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\node_modules\q\q.js:126
1>                      throw e;
1>                            ^
1>  CordovaError: The provided path "C:\Users\Nathan\Documents\CordovaTest\cordovatest\cordovatest\bld\Debug\platforms\android" is not an Android project.
1>      at Object.android_parser (C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\node_modules\cordova\src\metadata\android_parser.js:37:15)
1>      at C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\node_modules\cordova\src\prepare.js:51:23
1>      at Array.map (native)
1>      at Object.prepare (C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\node_modules\cordova\src\prepare.js:49:35)
1>      at preparePlatform (C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\app.js:322:24)
1>      at _fulfilled (C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\node_modules\q\q.js:787:54)
1>      at self.promiseDispatch.done (C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\node_modules\q\q.js:816:30)
1>      at Promise.promise.promiseDispatch (C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\node_modules\q\q.js:749:13)
1>      at C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\node_modules\q\q.js:557:44
1>      at flush (C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\node_modules\q\q.js:108:17)
1>C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda-targets\Microsoft.MDA.targets(115,5): error MSB3073: The command ""C:\Users\Nathan\AppData\Roaming\npm\node_modules\vs-mda\vs-cli" prepare --platform Android --configuration Debug --projectDir . --projectName "servermon"" exited with code 8.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

解决方案

It seems the Android template that was downloaded by Cordova is "corrupted".

To fix this: Try deleting the cached android platform in your user directory:

C:\users\<username>\.cordova\android\*

Then, clean and build the Solution in Visual Studio. Or to be really sure, delete the ‘bld’ directory inside the project folder.

This should force Cordova to re-download the Android template and fix the issue.

这篇关于无法建立在Visual Studio科尔多瓦项目的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆