npm 运行 脚本无法编译 sass

npm run script failing to compile sass

因此,似乎在更新 brackets.io 之后,我无法再 运行 使用 node-sass 编译我的 sass 代码的脚本。我对此还是个新手,所以请多多包涵。

这是我尝试 npm 运行 脚本时的错误文件:

0 info it worked if it ends with ok
1 verbose cli [ 'C:\Program Files\nodejs\node.exe',
1 verbose cli   'C:\Users\Tad\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js',
1 verbose cli   'run',
1 verbose cli   'compile:sass' ]
2 info using npm@6.0.0
3 info using node@v8.11.1
4 verbose run-script [ 'precompile:sass', 'compile:sass', 'postcompile:sass' ]
5 info lifecycle natours@1.0.0~precompile:sass: natours@1.0.0
6 info lifecycle natours@1.0.0~compile:sass: natours@1.0.0
7 verbose lifecycle natours@1.0.0~compile:sass: unsafe-perm in lifecycle true
8 verbose lifecycle natours@1.0.0~compile:sass: PATH: C:\Users\Tad\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin;C:\Users\Tad\Desktop\starter\node_modules\.bin;C:\Program Files\ImageMagick-7.0.5-Q16;C:\Python27\;C:\Python27\Scripts;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;c:\Program Files (x86)\Microsoft SQL Server0\Tools\Binn\;c:\Program Files\Microsoft SQL Server0\Tools\Binn\;c:\Program Files\Microsoft SQL Server0\DTS\Binn\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\Skype\Phone\;C:\Program Files (x86)\Windows Live\Shared;C:\Program Files (x86)\GtkSharp.12\bin;C:\Program Files\Git\cmd;C:\Program Files\nodejs\;C:\Program Files (x86)\Brackets\command;C:\Users\Tad\AppData\Roaming\npm
9 verbose lifecycle natours@1.0.0~compile:sass: CWD: C:\Users\Tad\Desktop\starter
10 silly lifecycle natours@1.0.0~compile:sass: Args: [ '/d /s /c', 'node-sass sass/main.scss css/style.css -w' ]
11 silly lifecycle natours@1.0.0~compile:sass: Returned: code: 3221225786  signal: null
12 info lifecycle natours@1.0.0~compile:sass: Failed to exec compile:sass script
13 verbose stack Error: natours@1.0.0 compile:sass: `node-sass sass/main.scss css/style.css -w`
13 verbose stack Exit status 3221225786
13 verbose stack     at EventEmitter.<anonymous> (C:\Users\Tad\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\index.js:283:16)
13 verbose stack     at emitTwo (events.js:126:13)
13 verbose stack     at EventEmitter.emit (events.js:214:7)
13 verbose stack     at ChildProcess.<anonymous> (C:\Users\Tad\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14)
13 verbose stack     at emitTwo (events.js:126:13)
13 verbose stack     at ChildProcess.emit (events.js:214:7)
13 verbose stack     at maybeClose (internal/child_process.js:925:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)
14 verbose pkgid natours@1.0.0
15 verbose cwd C:\Users\Tad\Desktop\starter
16 verbose Windows_NT 6.1.7601
17 verbose argv "C:\Program Files\nodejs\node.exe" "C:\Users\Tad\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js" "run" "compile:sass"
18 verbose node v8.11.1
19 verbose npm  v6.0.0
20 error code ELIFECYCLE
21 error errno 3221225786
22 error natours@1.0.0 compile:sass: `node-sass sass/main.scss css/style.css -w`
22 error Exit status 3221225786
23 error Failed at the natours@1.0.0 compile:sass script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 3221225786, true ]

当我尝试 npm 重建节点时-sass -force:

gyp ERR! build error 
gyp ERR! stack Error: Command failed: reg query "HKLM\Software\Microsoft\MSBuild \ToolsVersions" /s /reg:32 
gyp ERR! stack 'reg' is not recognized as an internal or external command, 
gyp ERR! stack operable program or batch file. 
gyp ERR! stack gyp ERR! stack Can't find "msbuild.exe". Do you have Microsoft Visual Studio C++  2008+ installed? 
gyp ERR! stack     at C:\Users\Tad\Desktop\starter\node_modules\node-gyp\lib\bui ld.js:138:25 
gyp ERR! stack     at ChildProcess.exithandler (child_process.js:282:5) 
gyp ERR! stack     at emitTwo (events.js:126:13) 
gyp ERR! stack     at ChildProcess.emit (events.js:214:7) 
gyp ERR! stack     at maybeClose (internal/child_process.js:925:16) 
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_proces s.js:209:5) 
gyp ERR! System Windows_NT 6.1.7601 
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Users\Tad\Desktop\ \starter\node_modules\node-gyp\bin\node-gyp.js" "rebuild" "--verbose" "--lib sass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library=" 
gyp ERR! cwd C:\Users\Tad\Desktop\starter\node_modules\node-sass 
gyp ERR! node -v v8.11.1 
gyp ERR! node-gyp -v v3.6.2 
gyp ERR! not ok Build failed with error code: 

我有 MS VS 2008+,我下载了 MS Build Tools 2015,我认为这可能有帮助,但它仍然不起作用。

此外,如果没有简单的修复方法,我是否只是从我的项目中手动删除 node-sass 然后重新安装它?

如有任何帮助,我们将不胜感激。

我在办公室工作站上遇到过一次,如果我没记错的话,这个命令帮我做了

npm install --global --production windows-build-tools

这是 windows 构建问题的 github 问题页面 https://github.com/sass/node-sass/issues/2074

npm install --global --production windows-build-tools