Visual Studio Task Runner Explorer - ReferenceError: primordials is not defined
Visual Studio Task Runner Explorer - ReferenceError: primordials is not defined
所以我已经升级到 Visual Studio 16.6.3。当我转到 Task Runner Explorer 时,它没有加载我的 gulp 文件,在 Task Runner 输出 Window 我可以看到...
Failed to run "E:\Projects\...\Gulpfile.js"...
cmd.exe /c gulp --tasks-simple
fs.js:35
} = primordials;
^
ReferenceError: primordials is not defined
at fs.js:35:5
at req_ (E:\Projects\...\node_modules\natives\index.js:143:24)
at Object.req [as require] (E:\Projects\...\node_modules\natives\index.js:55:10)
at Object.<anonymous> (E:\Projects\...\node_modules\graceful-fs\fs.js:1:37)
at Module._compile (internal/modules/cjs/loader.js:1158:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)
at Module.load (internal/modules/cjs/loader.js:1002:32)
at Function.Module._load (internal/modules/cjs/loader.js:901:14)
at Module.require (internal/modules/cjs/loader.js:1044:19)
at require (internal/modules/cjs/helpers.js:77:18)
然后我 google 发现这是由于 建议升级到版本 4。所以我更新了我的 package.json 文件并从“gulp”:“3.9.1”到“gulp”:“4.0.2”。当我转到任务资源管理器时,我在任务运行程序输出中看到以下内容 Window ...
Failed to run "E:\Projects\...\Gulpfile.js"...
cmd.exe /c gulp --tasks-simple
AssertionError [ERR_ASSERTION]: Task function must be specified
at Gulp.set [as _setTask] (E:\Projects\...\node_modules\undertaker\lib\set-task.js:10:3)
at Gulp.task (E:\Projects\...\node_modules\undertaker\lib\task.js:13:8)
at Object.<anonymous> (E:\Projects\...\gulpfile.js:86:6)
at Module._compile (internal/modules/cjs/loader.js:1158:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)
at Module.load (internal/modules/cjs/loader.js:1002:32)
at Function.Module._load (internal/modules/cjs/loader.js:901:14)
at Module.require (internal/modules/cjs/loader.js:1044:19)
at require (internal/modules/cjs/helpers.js:77:18)
at requireOrImport (E:\Projects\...\node_modules\gulp\node_modules\gulp-cli\lib\shared\require-or-import.js:19:11) {
generatedMessage: false,
code: 'ERR_ASSERTION',
actual: false,
expected: true,
operator: '=='
我 google 这个和建议是将 gulp 降级到版本 3...我只想打开 Task Runner Explorer 而不是花 4 个小时来解决依赖性问题.
另外 运行 在 Visual Studio 内的 Visual Studio 包管理器控制台中 运行ning “npm install”(提升或不提升)似乎会导致一堆权限错误。我只能从提升的 powershell window.
成功 运行 npm install
有人能解决这些问题吗?
Package.json如下...
{
"version": "1.0.0",
"name": "asp.net",
"private": true,
"devDependencies": {
"del": "4.1.1",
"gulp": "3.9.1",
"gulp-concat": "^2.6.1",
"gulp-config": "0.3.0",
"gulp-cssmin": "^0.2.0",
"gulp-csso": "1.1.0",
"gulp-htmlmin": "5.0.1",
"gulp-imagemin": "2.4.0",
"gulp-less": "4.0.1",
"gulp-plumber": "1.2.1",
"gulp-uglify": "3.0.2",
"gulp.spritesmith": "^6.10.0",
"merge-stream": "2.0.0",
"vinyl-buffer": "1.0.1"
}
}
编辑:尝试从 Node 从 12.6.2 升级到 12.18.2 但没有成功。
编辑:尝试从 Node 从 12.6.2 升级到 14.5.0 但没有成功。
我找到的解决方案是降级到 NodeJs v11.15.0 并使用 gulp 3.9.1.
如果有人有更好的选择,我很想听听。
我找到了一个 不需要 需要降级 node 或 gulp[=28= 的解决方案], credit.
在与您的 package.json
相同的级别创建一个名为 npm-shrinkwrap.json
的文件,并用以下内容填充该文件:
{
"dependencies": {
"graceful-fs": {
"version": "4.2.2"
}
}
}
现在删除 node_modules
文件夹和 运行 npm install
在同一文件夹中,你现在应该好了。 (Reload
在 Visual Studio
的 Task Runner Explorer
中。)
所以我已经升级到 Visual Studio 16.6.3。当我转到 Task Runner Explorer 时,它没有加载我的 gulp 文件,在 Task Runner 输出 Window 我可以看到...
Failed to run "E:\Projects\...\Gulpfile.js"...
cmd.exe /c gulp --tasks-simple
fs.js:35
} = primordials;
^
ReferenceError: primordials is not defined
at fs.js:35:5
at req_ (E:\Projects\...\node_modules\natives\index.js:143:24)
at Object.req [as require] (E:\Projects\...\node_modules\natives\index.js:55:10)
at Object.<anonymous> (E:\Projects\...\node_modules\graceful-fs\fs.js:1:37)
at Module._compile (internal/modules/cjs/loader.js:1158:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)
at Module.load (internal/modules/cjs/loader.js:1002:32)
at Function.Module._load (internal/modules/cjs/loader.js:901:14)
at Module.require (internal/modules/cjs/loader.js:1044:19)
at require (internal/modules/cjs/helpers.js:77:18)
然后我 google 发现这是由于
Failed to run "E:\Projects\...\Gulpfile.js"...
cmd.exe /c gulp --tasks-simple
AssertionError [ERR_ASSERTION]: Task function must be specified
at Gulp.set [as _setTask] (E:\Projects\...\node_modules\undertaker\lib\set-task.js:10:3)
at Gulp.task (E:\Projects\...\node_modules\undertaker\lib\task.js:13:8)
at Object.<anonymous> (E:\Projects\...\gulpfile.js:86:6)
at Module._compile (internal/modules/cjs/loader.js:1158:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)
at Module.load (internal/modules/cjs/loader.js:1002:32)
at Function.Module._load (internal/modules/cjs/loader.js:901:14)
at Module.require (internal/modules/cjs/loader.js:1044:19)
at require (internal/modules/cjs/helpers.js:77:18)
at requireOrImport (E:\Projects\...\node_modules\gulp\node_modules\gulp-cli\lib\shared\require-or-import.js:19:11) {
generatedMessage: false,
code: 'ERR_ASSERTION',
actual: false,
expected: true,
operator: '=='
我 google 这个和建议是将 gulp 降级到版本 3...我只想打开 Task Runner Explorer 而不是花 4 个小时来解决依赖性问题.
另外 运行 在 Visual Studio 内的 Visual Studio 包管理器控制台中 运行ning “npm install”(提升或不提升)似乎会导致一堆权限错误。我只能从提升的 powershell window.
成功 运行 npm install有人能解决这些问题吗?
Package.json如下...
{
"version": "1.0.0",
"name": "asp.net",
"private": true,
"devDependencies": {
"del": "4.1.1",
"gulp": "3.9.1",
"gulp-concat": "^2.6.1",
"gulp-config": "0.3.0",
"gulp-cssmin": "^0.2.0",
"gulp-csso": "1.1.0",
"gulp-htmlmin": "5.0.1",
"gulp-imagemin": "2.4.0",
"gulp-less": "4.0.1",
"gulp-plumber": "1.2.1",
"gulp-uglify": "3.0.2",
"gulp.spritesmith": "^6.10.0",
"merge-stream": "2.0.0",
"vinyl-buffer": "1.0.1"
}
}
编辑:尝试从 Node 从 12.6.2 升级到 12.18.2 但没有成功。
编辑:尝试从 Node 从 12.6.2 升级到 14.5.0 但没有成功。
我找到的解决方案是降级到 NodeJs v11.15.0 并使用 gulp 3.9.1.
如果有人有更好的选择,我很想听听。
我找到了一个 不需要 需要降级 node 或 gulp[=28= 的解决方案], credit.
在与您的 package.json
相同的级别创建一个名为 npm-shrinkwrap.json
的文件,并用以下内容填充该文件:
{
"dependencies": {
"graceful-fs": {
"version": "4.2.2"
}
}
}
现在删除 node_modules
文件夹和 运行 npm install
在同一文件夹中,你现在应该好了。 (Reload
在 Visual Studio
的 Task Runner Explorer
中。)