【问题标题】:npm install doesn't work because of node-sass on ubuntu由于 ubuntu 上的 node-sass,npm install 不起作用
【发布时间】:2021-10-08 11:34:00
【问题描述】:

我正在尝试npm install Ubuntu 上的一个项目,但我收到了这个错误:

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

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

Node Sass does not yet support your current environment: Linux 64-bit with false

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

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

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

Can't find Python executable "python"

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

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

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

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

我该如何解决这个问题?

【问题讨论】:

    标签: node.js ubuntu npm yarnpkg node-sass


    【解决方案1】:

    有两种解决方案。

    1。修复 npm 的 python 安装

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

    npm config set python python2.7
    

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

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

    2。停止使用 node-sass

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

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

    打开您的package.json 文件并将dependencies 中的node-sass 行编辑为:

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

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

    【讨论】:

      【解决方案2】:

      我从要点中看到,您在 ubuntu 上运行节点版本 16.x。正如here 所见,这可能是节点16 与您尝试构建的node-sass 版本之间的版本不兼容。您应该至少使用 node-sass 的 6.0.1 版本来支持节点 16。

      【讨论】:

      • 非常感谢,我检查了一下,我不得不使用 node v14 而不是 v16,现在它可以正常工作了。
      猜你喜欢
      • 2022-11-01
      • 2022-08-21
      • 2021-05-02
      • 2020-10-22
      • 2015-03-19
      • 1970-01-01
      • 2020-09-11
      • 2020-01-05
      • 1970-01-01
      相关资源
      最近更新 更多