首页 > 解决方案 > 由于 ubuntu 上的 node-sass,npm install 不起作用

问题描述

我正在尝试npm install在 Ubuntu 上进行项目,但出现此错误:

Node Sass does not yet support your current environment: Linux 64-bit with Unsupported runtime (93)

我在 Stack Overflow 上找到的解决方案是 run npm rebuild node-sass,就像在这个线程中一样:

Node Sass 还不支持你当前的环境:Linux 64-bit with false

当我第一次尝试这个解决方案时,我得到了这个错误:

npm - “Can't find Python executable ”python“, you can set the PYTHON env variable.”

我找到的解决方案是从这里安装 Python 2.7:

找不到 Python 可执行文件“python”

现在当我运行 python --version 我得到: Python 2.7.18

所以我删除了 node_modules 文件夹和锁定文件,然后npm install再次运行,但它没有工作,现在我得到一个构建错误,你可以在这个 gist 中找到它:

https://gist.github.com/aimad-majdou/b99c5295b56fd5bc68492fa638d63018

我在 Mac OS 和 Windows 上安装这个项目从来没有遇到过问题,但这是我第一次尝试在 Ubuntu 上安装它。

我该如何解决这个问题?

标签: node.jsubuntunpmyarnpkgnode-sass

解决方案


有两种解决方案。

1.修复npm的python安装

您可以通过运行以下命令告诉 npm 使用正确版本的 python:

npm config set python python2.7

希望在此之后您可以构建 node-sass。

但是,我个人使用另一种解决方案:

2.停止使用node-sass

在 npm 上有一个纯 JavaScript 的sass实现,称为sass。它与 node-sass 兼容。只需替换node-sasssass.

当然,通常你并没有决定使用哪个 sass 模块。通常像 React 这样的框架决定使用二进制模块,node-sass所以你不得不使用它。好吧,你可以在你的项目中覆盖它。

打开您的package.json文件并编辑以下node-sassdependencies

"dependencies": {
    ...
    "node-sass": "npm:sass@^1.30.0",
    ...
}

这告诉npmsass版本 1.30.0 安装为node-sass。由于 sass 模块命令中的 sass 与 node-sass 中的 sass 命令兼容,您现在可以构建项目而无需担心构建 sass。当然,如果你愿意,你可以使用更新版本的 sass。


推荐阅读