【发布时间】:2015-05-15 18:01:39
【问题描述】:
当我使用 Cordova 构建任何 android 应用程序时,它会失败并显示
TypeError:无法读取未定义的属性“prepEnv”。
我已完成所有故障排除并检查了环境变量(根据 MS 文档)
我发现如果我从我的项目文件夹中调用bld\Debug\platforms\android\cordova\build --ant --debug,构建工作。
但是当我调用"C:\Users\<user>\AppData\Roaming\npm\\node_modules\vs-mda\vs-cli.cmd" build --platform Android --configuration Debug --projectDir . --rojectName Gappy --npmInstallDir C:\Users\<user>\AppData\Roaming\npm --language en-US --buildTarget AndroidDevice 时,构建失败。
第二种方法的一个步骤,是调用第一个批处理文件。
VS2013 和 VS2015 会发生这种情况。 64 位和 32 位版本的 Node.JS
有什么帮助/想法吗?
【问题讨论】:
-
您能否发布诊断构建日志。转到工具 -> 选项 -> 项目和解决方案 -> 构建并运行,将 MSBuild 项目“构建输出详细程度”更改为诊断。重建项目后 - 应该会有额外的信息 - 可能会帮助您解决问题。
-
我有同样的错误输出:
-
>命令:D:\cordova\build.bat --debug --ant >D:\cordova\node_modules\q\q.js:126 >throw e; >^ >TypeError: Cannot read property 'prepEnv' of undefined > at Object.module.exports.run (D:\cordova\lib\build.js:326:19) > at D:\cordova\build:36:22 > 在 _fulfilled (D:\cordova\node_modules\q\q.js:798:54) > 在 self.promiseDispatch.done (D:\cordova\node_modules\q\q.js:827:30) > 在 Promise。 promise.promiseDispatch (D:\cordova\node_modules\q\q.js:760:13) > 在 D:\cordova\node_modules\q\q.js:574:44 > 在刷新时 (D:\cordova\node_modules\ q\q.js:108:17) > 在 process._tickCallback (node.js:355:11)
-
在我上一条评论中,我编辑了输出以适应最大字符数。我将路径从 D:\CS.Cordova\bld\Debug\platforms\android\cordova 更改为 D:\cordova
-
顺便说一句,它曾经对我使用 CTP 3,但自从我卸载并安装 CTP 3.1 后出现错误
标签: android node.js visual-studio-cordova