Jaa*_*ans 13 javascript node.js gulp visual-studio-2015 task-runner-explorer
我有一些Gulp工作做典型clean,build,release一个网站的行动.在我看来,没有什么特别不寻常的.(实际上它与Aurelia TypeScript骨架非常相似.)
大多数团队使用GulpPowerShell /命令提示符进行前端开发,并使用VS Code/Sublime进行编辑.一些团队使用Visual Studio 2015做同样的事情.
build从命令提示符运行任务工作正常,但如果我们从Visual Studio的Task Runner Explorer运行它,它会给我们一个错误.
但是,运行其他任务(例如clean)可以在命令提示符和VS Task Runner Explorer中正常工作.
有趣的是,Task Runner explorer甚至会输出它调用以运行任务的进程的副本.如果我复制确切的命令(见下文),并运行在命令提示符下,它并没有给出错误.它仅在从Task Runner Explorer运行时发生,并且仅在该任务中运行.
这是Task Runner Explorer的任务命令行和相关错误输出:
cmd.exe /c gulp -b "D:\Development\xxxx\WebSite" --color --gulpfile "D:\Development\xxxx\WebSite\Gulpfile.js" build
[20:40:42] Using gulpfile D:\Development\xxxx\WebSite\Gulpfile.js
[20:40:42] Starting 'build'...
[20:40:42] Starting 'clean'...
[20:40:42] Finished 'clean' after 5.74 ms
[20:40:42] Starting 'build-system'...
[20:40:42] Starting 'build-html'...
[20:40:42] Starting 'build-css'...
[20:40:42] Finished 'build-css' after 31 ms
[20:40:43] Finished 'build-html' after 162 ms
D:\Development\xxxx\WebSite\node_modules\gulp-tsb\lib\builder.js:153
var newLastBuildVersion = new Map();
^
ReferenceError: Map is not defined
at Object.build (D:\Development\xxxx\WebSite\node_modules\gulp-tsb\lib\builder.js:153:39)
at Stream.<anonymous> (D:\Development\xxxx\WebSite\node_modules\gulp-tsb\lib\index.js:40:22)
at _end (D:\Development\xxxx\WebSite\node_modules\through\index.js:65:9)
at Stream.stream.end (D:\Development\xxxx\WebSite\node_modules\through\index.js:74:5)
at DestroyableTransform.onend (D:\Development\xxxx\WebSite\node_modules\readable-stream\lib\_stream_readable.js:545:10)
at DestroyableTransform.g (events.js:180:16)
at DestroyableTransform.emit (events.js:117:20)
at endReadableNT (D:\Development\xxxx\WebSite\node_modules\readable-stream\lib\_stream_readable.js:960:12)
Process terminated with code 8.
at afterTick (D:\Development\xxxx\WebSite\node_modules\process-nextick-args\index.js:18:8)
at process._tickCallback (node.js:419:13)
Run Code Online (Sandbox Code Playgroud)
我的Google-Fu在错误消息/堆栈跟踪或相关搜索中显示为空.
是什么赋予了?
更新:根据@ josh-graham,VS调用的Node版本如下所示.
[10:12:48] Starting 'clean'...
Version: v0.10.31
[10:12:48] Finished 'clean' after 42 ms
Run Code Online (Sandbox Code Playgroud)
scn*_*iro 44
VS附带旧版本的Node.js,并不表示即使更新2即将推出,更新是否会很快到来.您的系统可能有更新的版本.要在Visual Studio中修复此问题,您需要确定PATH的优先级(假设您的PATH上有节点).只需找到"外部Web工具"选项,并将$(PATH)移动到以下顶部...
有关更多详细信息,请参阅此内容 - 在Visual Studio 2015中自定义外部Web工具.此外,抱歉图片,但它似乎是解释这个问题最直接的方式.
在看到这个答案越来越受欢迎以帮助他人之后,我继续深入研究为什么这仍然是一个问题.我看着当前Node.js的工具的话为更新3和仍然没有看到关于他们的更新汇总版本如下的任何信息...
- 更快,更好的ES6 IntelliSense
- 更可靠的调试
- 改进的单元测试经验(包括磁带支持)
- 更多项目类型中的.npm命令
稍微走下兔子洞,看看他们的确切版本选择是否明显(不是这样)我确实在他们的github存储库中找到了以下内容 ......
this.versions = {node: '0.10.0', v8: '3.14.5.8'};
Run Code Online (Sandbox Code Playgroud)
这可能吗?不确定,但我认为他们仍然没有使用更新版本的Node.js运送VS.
| 归档时间: |
|
| 查看次数: |
7728 次 |
| 最近记录: |