Visual Studio 2015 RTM Cordova项目无法调试/部署到Android、Windows、Windows Phone。

10
我感觉我升级到了Visual Studio 2015 RTM太早了。Visual Studio模拟器无法启动,声称预发行版已过期。 我运行了RTM安装程序,允许其根据需要替换发布候选组件。这个过程很顺利,但是现在升级后,Cordova项目将不再部署或调试。 在发布候选版中,工具栏的绿色“开始”按钮有一个设备选择下拉菜单。现在,使用RTM版本,该按钮仅标记为“开始”,其下拉菜单不提供设备选择选项。相反,下拉菜单中唯一的选项是“开始”。当我更改“解决方案平台”下拉菜单的选择时,位于此“开始”按钮左侧,开始按钮仍然不提供选择。请参见下面的图像。
解决方案平台:Android Cordova-Android 解决方案平台:Windows-AnyCPU Cordova-Windows 解决方案平台: Windows Phone 8 Cordova-WP “调试”菜单中的“开始调试”项已禁用。如果我点击“开始”工具栏按钮,我会得到这个消息:“调试器无法继续运行进程。无法启动调试。”
我确认了Visual Studio模拟器适用于Android。我已经让配置文件“5" Lollipop (5.0) XXHDPI Phone”正常工作。
为了进行比较,我还添加了一个新的Windows Phone 8.1项目到我的解决方案中,并确认该项目允许选择调试目标。在工具栏中,“开始”一词被替换为“模拟器8.1 WVGA 4英寸512MB”。将此项目设置为启动项目后,“调试”菜单现在启用了“开始调试”选项。该项目如预期般启动。

C#-WP81

由于Visual Studio模拟器对Android的支持已经可用,并且Visual Studio成功地针对Windows Phone模拟器进行了定位,因此似乎与Visual Studio的Cordova项目类型相关的配置存在问题。VS2015 Cordova项目与其“设备”目标之间的链接缺失。

有什么想法吗?

更新:另请参阅:无法在Visual Studio RTM中启动cordova应用程序进行调试

更新2:我已经做出了几个调整:

  1. Apache Cordova的依赖检查工具发现缺少Android SDK组件。我添加了这些组件,满足了依赖检查。

  2. Apache Cordova的环境变量覆盖工具没有显示ADT_HOME路径。我将其设置为“C:\Program Files (x86)\Android\android-sdk”。

  3. 我的构建输出显示“[taskdef] could not load definitions from resource emma_ant.properties. it could not be found.”。我添加了一个系统环境变量ANT_HOME,指向“C:\Program Files (x86)\Microsoft Visual Studio 14.0\Apps\apache-ant-1.9.3”,并在PATH中添加了“;%ANT_HOME%\bin”。仍然存在“emma_ant.properties”的消息,但不到警告或错误级别。

将解决方案平台设置为Android后,我的当前构建输出为:

1>------ Rebuild All started: Project: BlankCordovaApp2, Configuration: Debug Android ------
1>  Buildfile: C:\Users\billvo\Documents\Visual Studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\build.xml
1>    [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found.
1>
1>  -check-env:
1>   [checkenv] Android SDK Tools Revision 23.0.0
1>   [checkenv] Installed at C:\Program Files (x86)\Android\android-sdk
1>
1>  -setup:
1>       [echo] Project Name: MainActivity
1>    [gettype] Project Type: Application
1>
1>  -pre-clean:
1>
1>  clean:
1>  [getlibpath] Library dependencies:
1>  [getlibpath]
1>  [getlibpath] ------------------
1>  [getlibpath] Ordered libraries:
1>    [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found.
1>
1>  nodeps:
1>
1>  -check-env:
1>   [checkenv] Android SDK Tools Revision 23.0.0
1>   [checkenv] Installed at C:\Program Files (x86)\Android\android-sdk
1>
1>  -setup:
1>       [echo] Project Name: MainActivity
1>    [gettype] Project Type: Android Library
1>
1>  -pre-clean:
1>
1>  clean:
1>
1>  BUILD SUCCESSFUL
1>  Total time: 0 seconds
1>  Your environment has been set up for using Node.js 0.12.2 (ia32) and npm.
1>  ------ Ensuring correct global installation of package from source package directory: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\ApacheCordovaTools\packages\vs-tac
1>  ------ Name from source package.json: vs-tac
1>  ------ Version from source package.json: 1.0.0
1>  ------ Package not currently installed globally.
1>  ------ Installing globally from source package. This could take a few minutes...
1>  > edge@0.10.1 install C:\Users\billvo\AppData\Roaming\npm\node_modules\vs-tac\node_modules\edge
1>  > node tools/install.js
1>  Success: platform check for edge.js: node.js ia32 v0.12.2
1>  npm WARN engine npm@1.3.4: wanted: {"node":">=0.6","npm":"1"} (current: {"node":"0.12.2","npm":"2.7.4"})
1>  npm WARN engine cordova-js@3.6.2: wanted: {"node":"~0.10.x"} (current: {"node":"0.12.2","npm":"2.7.4"})
1>  npm WARN installMany normalize-package-data was bundled with npm@1.3.4, but bundled package wasn't found in unpacked tree
1>  C:\Users\billvo\AppData\Roaming\npm\vs-tac-cli -> C:\Users\billvo\AppData\Roaming\npm\node_modules\vs-tac\vs-tac-cli.cmd
1>  vs-tac@1.0.0 C:\Users\billvo\AppData\Roaming\npm\node_modules\vs-tac
1>  ├── rimraf@2.2.6
1>  ├── ncp@0.5.1
1>  ├── mkdirp@0.3.5
1>  ├── q@1.0.1
1>  ├── semver@2.3.1
1>  ├── adm-zip@0.4.4
1>  ├── fstream@0.1.28 (inherits@2.0.1, graceful-fs@3.0.8)
1>  ├── optimist@0.6.1 (wordwrap@0.0.3, minimist@0.0.10)
1>  ├── tar@0.1.20 (inherits@2.0.1, block-stream@0.0.8)
1>  ├── elementtree@0.1.6 (sax@0.3.5)
1>  ├── request@2.36.0 (forever-agent@0.5.2, aws-sign2@0.5.0, qs@0.6.6, oauth-sign@0.3.0, tunnel-agent@0.4.1, json-stringify-safe@5.0.1, mime@1.2.11, node-uuid@1.4.3, tough-cookie@2.0.0, http-signature@0.10.1, hawk@1.0.0, form-data@0.1.4)
1>  ├── ripple-emulator@0.9.30 (connect-xcors@0.5.2, colors@0.6.0-1, open@0.0.3, accounting@0.4.1, request@2.12.0, moment@1.7.2, express@3.1.0)
1>  ├── edge@0.10.1 (edge-cs@0.2.7, nan@1.8.4)
1>  └── plugman@0.22.4 (q@0.9.7, underscore@1.4.4, nopt@1.0.10, rc@0.3.0, cordova-lib@0.21.6, npm@1.3.4)
1>  ------ npm install of vs-tac@1.0.0 from C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\ApacheCordovaTools\packages\vs-tac completed.
1>  ------ Installing Cordova tools cordova@4.3.1 for project from npm. This could take a few minutes...
1>  npm WARN engine npm@1.3.4: wanted: {"node":">=0.6","npm":"1"} (current: {"node":"0.12.2","npm":"2.7.4"})
1>  npm WARN engine cordova-js@3.8.0: wanted: {"node":"~0.10.x"} (current: {"node":"0.12.2","npm":"2.7.4"})
1>  npm WARN engine xmlbuilder@2.2.1: wanted: {"node":"0.8.x || 0.10.x"} (current: {"node":"0.12.2","npm":"2.7.4"})
1>  npm WARN installMany normalize-package-data was bundled with npm@1.3.4, but bundled package wasn't found in unpacked tree
1>  cordova@4.3.1 node_modules\cordova
1>  ├── underscore@1.7.0
1>  ├── q@1.0.1
1>  ├── nopt@3.0.1 (abbrev@1.0.7)
1>  └── cordova-lib@4.3.1 (valid-identifier@0.0.1, osenv@0.1.0, properties-parser@0.2.3, bplist-parser@0.0.6, mime@1.2.11, unorm@1.3.3, semver@2.0.11, dep-graph@1.1.0, shelljs@0.3.0, rc@0.5.2, through2@0.6.3, npmconf@0.1.16, xcode@0.6.7, elementtree@0.1.5, d8@0.4.4, request@2.47.0, glob@4.0.6, tar@1.0.2, init-package-json@1.7.1, plist@1.1.0, cordova-js@3.8.0, npm@1.3.4)
1>  ------ npm install of cordova@4.3.1 from npm completed.
1>  ------ Build Settings:
1>  ------ Build Settings:
1>  ------    platformConfigurationBldDir: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\bld\Android\Debug
1>  ------    platformConfigurationBinDir: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\bin\Android\Debug
1>  ------    buildCommand: prepare
1>  ------    platform: Android
1>  ------    cordovaPlatform: android
1>  ------    configuration: Debug
1>  ------    cordovaConfiguration: Debug
1>  ------    projectName: BlankCordovaApp2
1>  ------    projectSourceDir: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2
1>  ------    npmInstallDir: C:\Users\billvo\AppData\Roaming\npm
1>  ------    language: en-US
1>  ------ Platform android already exists
1>  ------ Updating plugins
1>  ------ Currently installed plugins:
1>  ------ Currently installed dependent plugins:
1>  ------ Currently configured plugins:
1>  ------ Preparing platform: android
1>  Generating config.xml from defaults for platform "android"
1>  Calling plugman.prepare for platform "android"
1>  Preparing android project
1>  Processing configuration changes for plugins.
1>  Iterating over installed plugins: []
1>  Writing out cordova_plugins.js...
1>  Wrote out Android application name to "BlankCordovaApp2"
1>  deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-hdpi\screen.png
1>  deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-ldpi\screen.png
1>  deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-mdpi\screen.png
1>  deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-xhdpi\screen.png
1>  deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-hdpi\screen.png
1>  deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-ldpi\screen.png
1>  deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-mdpi\screen.png
1>  deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-xhdpi\screen.png
1>  splash screens: [{"src":"res/screens/android/screen-hdpi-landscape.png","density":"land-hdpi","platform":"android"},{"src":"res/screens/android/screen-ldpi-landscape.png","density":"land-ldpi","platform":"android"},{"src":"res/screens/android/screen-mdpi-landscape.png","density":"land-mdpi","platform":"android"},{"src":"res/screens/android/screen-xhdpi-landscape.png","density":"land-xhdpi","platform":"android"},{"src":"res/screens/android/screen-hdpi-portrait.png","density":"port-hdpi","platform":"android"},{"src":"res/screens/android/screen-ldpi-portrait.png","density":"port-ldpi","platform":"android"},{"src":"res/screens/android/screen-mdpi-portrait.png","density":"port-mdpi","platform":"android"},{"src":"res/screens/android/screen-xhdpi-portrait.png","density":"port-xhdpi","platform":"android"}]
1>  copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-hdpi-landscape.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-hdpi\screen.png
1>  copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-ldpi-landscape.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-ldpi\screen.png
1>  copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-mdpi-landscape.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-mdpi\screen.png
1>  copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-xhdpi-landscape.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-xhdpi\screen.png
1>  copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-hdpi-portrait.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-hdpi\screen.png
1>  copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-ldpi-portrait.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-ldpi\screen.png
1>  copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-mdpi-portrait.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-mdpi\screen.png
1>  copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-xhdpi-portrait.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-xhdpi\screen.png
1>  deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-hdpi\icon.png
1>  deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-ldpi\icon.png
1>  deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-mdpi\icon.png
1>  deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-xhdpi\icon.png
1>  copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\icons\android\icon-36-ldpi.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-ldpi\icon.png
1>  copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\icons\android\icon-48-mdpi.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-mdpi\icon.png
1>  copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\icons\android\icon-72-hdpi.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-hdpi\icon.png
1>  copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\icons\android\icon-96-xhdpi.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-xhdpi\icon.png
1>  Wrote out Android package name to "io.cordova.myapp2a20d4"
========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========

我仍然无法选择调试目标设备,无论是为Android、Windows-AnyCPU还是Windows Phone 8构建。
更新3:下面的图片显示了安装的Visual Studio 2015组件。我尝试添加Visual C++移动开发,但在Cordova中没有看到任何变化,所以我将其删除。

Add/Remove 1

Add/Remove 2

Add/Remove 3

Add/Remove 4

更新4: 当我登录一个新的本地用户账户时,我能够对Visual Studio模拟器进行Android调试。这告诉我问题很可能是特定于我的主要Windows账户配置文件。我可以通过删除我的配置文件并重新开始来解决这个问题。


我遇到了相同的问题,但我的情况是我从未安装过VS2015 RC。我已经安装了最新的VS2013 Community。尽可能地卸载了2013,安装了VS2015 Community,并且对于Cordova项目仍然出现了相同的调试错误。 - Elyas
4个回答

30

看起来从升级中有一个库已经损坏。请尝试以下步骤:

  1. 关闭所有VS实例
  2. cd %appdata%\Local\Microsoft\Phone Tools”
  3. 将CoreCon文件夹重命名
  4. 再次启动VS。

请告诉我们是否解决了您的问题。 感谢使用VS 2015和Apache Cordova工具。

Soak.


这对我有用,谢谢。同样的答案一个小时前在https://dev59.com/UFwZ5IYBdhLWcg3wYfZu#31630494给了Leo。 - gReX
请问在您的情况下,appdata是什么意思? - eeadev
1
解决了,谢谢。整天都在修复然后卸载/重新安装 VS 2015! 微软真应该修复这个问题,而不是给出一个愚蠢的错误提示来建议重命名 CoreCon 文件夹。 - philk
对我也解决了...我正在从同一台安装了VS2015 RTM的机器上删除VS2013和相应的Cordova CTPs。 - xinqiu
是的,这确实有效,安装程序应该在设置完成后更新以执行完全相同的任务。 - andreszs
显示剩余4条评论

2

“Subhag Oak”给出的答案对我有用。

以下是我的研究文档,如果对其他用户无效。

观察输出,以获取您的特定原因。在VS选项中增加构建详细程度。

转到工具 ->选项 ->Apache Cordova工具,在那里点击“运行依赖项检查器”

检查安装的Visual Studio功能,默认情况下选择如下:

VS for Cordova-Development

msdn:安装Cordova工具相比

还需要添加:

  • Windows Phone 8.1模拟器
  • Android Native Development Kit (R10E, 32 bits)

如果编译空白cordova应用程序后仍然没有仿真器:

no preinstalled 8.1. Emulator

我认为你必须安装Google Chrome:msdn “安装程序不会安装Google Chrome,如果您想运行Apache Ripple模拟器以进行iOS和Android,则需要它。它不会安装Apple iTunes,如果要将应用程序部署到连接到Windows PC的iOS设备,则需要它。”

还要检查您的Hyper-V设置:

我正在检查Tools\Visual Studio Emulator for Android: Activated Emulator Message

检查系统要求

请检查此链接:解决Visual Studio Emulator for Android问题

或者尝试“重新安装node.js”。再次等待“设置修复”。


感谢您的建议。我已经仔细研究了这些建议。它们帮助我解决了一些配置问题,但最初的问题仍然存在。我不确定StackOverflow认为什么是重复的,但您提到的问题专门涉及Android,没有提到在这里也出现了Windows和Windows Phone的问题。如果有“严重问题”,您可以点击“标记”。 - BillVo
很棒的更新问题。阅读了你的整个输出,将尝试给出另一个提示。 - gReX
我已经添加了显示安装的VS2015组件的图像。我已经安装并使用空WP项目成功运行了Windows Phone 8.1模拟器,因此我看不到“下载模拟器8.1...”选项。当您安装该模拟器后,您的Cordova项目是否会让您选择该模拟器?在“开始”下拉菜单中,我只看到“开始”选项,没有其他选项。 - BillVo

0

以上的解决方案对我没有用。但是在网上搜索了几个小时后,我找到了一个非常好用的解决方案:

如果“通用 Windows 应用程序开发工具”仍然安装着:

  1. 进入“程序和功能”,选择 Visual Studio 2105,点击“更改”。
  2. 在 Visual Studio 安装向导中,点击“修改”。
  3. 取消选中“通用 Windows 应用程序开发工具”这一功能。
  4. 再次选中“通用 Windows 应用程序开发工具”,并点击“更新”。

来源: https://social.msdn.microsoft.com/Forums/vstudio/en-US/c9936d80-087d-4cad-93bf-ca4873889773/the-debugger-cannot-continue-running-the-process?forum=vsdebug


0

SubhagOak的解决方案对我也起作用了,尽管我的预部署场景略有不同。无法通过USB调试从VS2015部署到Android设备。VS弹出的错误通知基本上说明找不到文件,但在VS错误控制台中没有列出任何错误。它只生成了一个弹出窗口。在使用VS2015 Teamwork Explorer创建新克隆的本地GIThub存储库的新本地分支后,出现此错误。

这是第二次这个解决方案对我起作用了;相同的情况。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接