Node Sass尚不支持您当前的环境:Windows 64位,运行时不受支持(88)

时间:2020-10-30 16:58:37

标签: node.js npm sass gulp gulp-sass

一开始我尝试使用gulp-sass安装npm i gulp-sass --save-dev最新版本,但遇到了很多错误,但后来解决了。但是每当我尝试运行gulp时,都会出现此错误:

Error: Node Sass does not yet support your current environment: Windows 64-bit with Unsupported runtime (88)
For more information on which environments are supported please see:
https://github.com/sass/node-sass/releases/tag/v4.14.1
    at module.exports (C:\Users\user\Desktop\HPortf\node_modules\node-sass\lib\binding.js:13:13)
    at Object.<anonymous> (C:\Users\user\Desktop\HPortf\node_modules\node-sass\lib\index.js:14:35)
    at Module._compile (node:internal/modules/cjs/loader:1083:30)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1112:10)
    at Module.load (node:internal/modules/cjs/loader:948:32)
    at Function.Module._load (node:internal/modules/cjs/loader:789:14)
    at Module.require (node:internal/modules/cjs/loader:972:19)
    at require (node:internal/modules/cjs/helpers:88:18)
    at Object.<anonymous> (C:\Users\user\Desktop\HPortf\node_modules\gulp-sass\index.js:166:21)
    at Module._compile (node:internal/modules/cjs/loader:1083:30)

我尝试用npm rebuild node-sass --force解决问题,但它也会引起错误。

PS C:\Users\user\Desktop\HPortf> npm rebuild node-sass --force
npm WARN using --force I sure hope you know what you are doing.

> node-sass@4.14.1 install C:\Users\user\Desktop\HPortf\node_modules\node-sass
> node scripts/install.js

Downloading binary from https://github.com/sass/node-sass/releases/download/v4.14.1/win32-x64-88_binding.node
Cannot download "https://github.com/sass/node-sass/releases/download/v4.14.1/win32-x64-88_binding.node":

HTTP error 404 Not Found

Hint: If github.com is not accessible in your location
      try setting a proxy via HTTP_PROXY, e.g.

      export HTTP_PROXY=http://example.com:1234

or configure npm proxy via

      npm config set proxy http://example.com:8080

> node-sass@4.14.1 postinstall C:\Users\user\Desktop\HPortf\node_modules\node-sass
> node scripts/build.js

Building: C:\Program Files\nodejs\node.exe C:\Users\user\Desktop\HPortf\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
gyp info it worked if it ends with ok
gyp verb cli [
gyp verb cli   'C:\\Program Files\\nodejs\\node.exe',
gyp verb cli   'C:\\Users\\user\\Desktop\\HPortf\\node_modules\\node-gyp\\bin\\node-gyp.js',
gyp verb cli   'rebuild',
gyp verb cli   '--verbose',
gyp verb cli   '--libsass_ext=',
gyp verb cli   '--libsass_cflags=',
gyp verb cli   '--libsass_ldflags=',
gyp verb cli   '--libsass_library='
gyp verb cli ]
gyp info using node-gyp@3.8.0
gyp info using node@15.0.1 | win32 | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb check python checking for Python executable "python2" in the PATH
gyp verb `which` failed Error: not found: python2
gyp verb `which` failed     at getNotFoundError (C:\Users\user\Desktop\HPortf\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\user\Desktop\HPortf\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\user\Desktop\HPortf\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\user\Desktop\HPortf\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\user\Desktop\HPortf\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\user\Desktop\HPortf\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (node:fs:183:21)
gyp verb `which` failed  python2 Error: not found: python2
gyp verb `which` failed     at getNotFoundError (C:\Users\user\Desktop\HPortf\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\user\Desktop\HPortf\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\user\Desktop\HPortf\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\user\Desktop\HPortf\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\user\Desktop\HPortf\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\user\Desktop\HPortf\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (node:fs:183:21) {
gyp verb `which` failed   code: 'ENOENT'
gyp verb `which` failed }
gyp verb check python checking for Python executable "python" in the PATH
gyp verb `which` failed Error: not found: python
gyp verb `which` failed     at getNotFoundError (C:\Users\user\Desktop\HPortf\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\user\Desktop\HPortf\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\user\Desktop\HPortf\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\user\Desktop\HPortf\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\user\Desktop\HPortf\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\user\Desktop\HPortf\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (node:fs:183:21)
gyp verb `which` failed  python Error: not found: python
gyp verb `which` failed     at getNotFoundError (C:\Users\user\Desktop\HPortf\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\user\Desktop\HPortf\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\user\Desktop\HPortf\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\user\Desktop\HPortf\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\user\Desktop\HPortf\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\user\Desktop\HPortf\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (node:fs:183:21) {
gyp verb `which` failed   code: 'ENOENT'
gyp verb `which` failed }
gyp verb could not find "python". checking python launcher
gyp verb could not find "python". guessing location
gyp verb ensuring that file exists: C:\Python27\python.exe
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack     at PythonFinder.failNoPython (C:\Users\user\Desktop\HPortf\node_modules\node-gyp\lib\configure.js:484:19)gyp ERR! stack     at PythonFinder.<anonymous> (C:\Users\user\Desktop\HPortf\node_modules\node-gyp\lib\configure.js:509:16) 
gyp ERR! stack     at callback (C:\Users\user\Desktop\HPortf\node_modules\graceful-fs\polyfills.js:295:20)
gyp ERR! stack     at FSReqCallback.oncomplete (node:fs:183:21)
gyp ERR! System Windows_NT 10.0.18362
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\user\\Desktop\\HPortf\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd C:\Users\user\Desktop\HPortf\node_modules\node-sass
gyp ERR! node -v v15.0.1
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
Build failed with error code: 1
node-sass@4.14.1 C:\Users\user\Desktop\HPortf\node_modules\node-sass
PS C:\Users\user\Desktop\HPortf>
  • 节点和npm版本
$ node --version
v15.0.1
user (master *) HmdPort
$ npm --version
6.14.8

9 个答案:

答案 0 :(得分:20)

以上都不适合我。所以,我卸载了 node-sass 并只安装了 sass。没有更多错误!

npm uninstall node-sass
npm i sass

答案 1 :(得分:19)

控制台中的这个命令对我有用:

npm rebuild node-sass

答案 2 :(得分:18)

感谢jonrsharpe

为我工作:

  1. 将node.js安装/降级到稳定版本(LTS),例如14.15.0
  2. 通过npm install node-sass@4.14.0安装兼容的node-sass版本;您可以找到列表here,甚至可以通过gulp-sass安装npm i gulp-sass --save-dev

direct link to list

答案 3 :(得分:2)

在将我的 Node.js 版本从 14.15.5(LTS) 更新到 15.8.0 后,我遇到了同样的问题。
为了解决这个问题,我将 Node.js 版本降级回 14.15.5(LTS)。

我用巧克力来降级 NPM。如果您的系统中没有安装 Chocolatey,
您可以从 here 获取 Chocolatey。

现在要降级 Node.js,我们必须执行以下步骤

  1. 卸载最新版本的 Node.js
    为此,您必须使用此代码。
    choco uninstall nodejs

  2. 要安装所需版本的 Node.js,
    choco install nodejs --version $VersionNumber

就我而言,
choco uninstall nodejs
choco install nodejs --version 14.15.5

这解决了我的问题。

答案 4 :(得分:2)

为我工作

  1. 使用您需要的特定节点版本进行 npm 安装

    这是我使用的节点版本

    npm install -g npm@6.14.6 --target_arch=x64

  2. 清理缓存

    npm cache clean --force

    rm -rf /node_modules

  3. 安装 node-sass

    npm install node-sass --save-dev --force

  4. 如果您有错误和警告,请尝试:

    npm fund

    npm audit fix

    npm install -g npm@6.14.6 --target_arch=x64

    npm start

答案 5 :(得分:1)

警告:不推荐使用LibSass和Node Sass。尽管他们将继续无限期地获得维护版本,但没有计划添加其他功能或与任何新的CSS或Sass功能兼容。仍在使用它的项目应移至Dart Sass。

不推荐使用node-sass软件包。

改为像这样安装sass

yarn add sass -D
# or
nom i sass --save-dev

答案 6 :(得分:0)

我遇到了同样的问题,我发现最好的解决方案是使用gulp-dart-sass。您无需降级Node.js(我现在将其与Node版本:v15.3.0一起使用)

简单地将gulp-sass替换为gulp-dart-sass

答案 7 :(得分:0)

以下是我为使其工作而遵循的步骤。

  • brew 卸载节点(或使用您使用的包管理器卸载)
  • brew install n
  • sudo chown -R $(whoami) /usr/local/n
  • n 14.15.0

答案 8 :(得分:0)

对于任何 SPFx 有此问题的人

如果您已升级节点版本,请执行升级 SPFx 解决方案的步骤

  1. 创建一个干净的 SPFx 项目(Webpart 或扩展(扩展仅适用于 2019+))

  2. 将以下文件保存在某处(以防万一)package.json、tsconfig.json、package-lock.json

  3. 仅从新项目复制到旧项目 2 个文件 package.json, tsconfig.json

  4. 运行 gulp clean

  5. 运行 npm install

  6. 运行 gulp build 等

总结here

相关问题