【问题标题】:How to fix electron sqlite3 rebuild error ( Syntax error) on windows 10如何在 Windows 10 上修复电子 sqlite3 重建错误(语法错误)
【发布时间】:2019-05-01 02:02:50
【问题描述】:

所以我以管理员身份运行npm install --global windows-build-tools,它说我已经成功安装了python 2.7。

但是当我在npm i sqlite3 之后尝试electron-rebuild -f -w sqlite3 时,它给了我这个错误。

× 重建失败

电子重建内部发生未处理的错误

gyp 错误!配置错误

gyp 错误!堆栈错误:命令失败: C:\Users\newub\AppData\Local\Programs\Python\Python37\python.EXE -c 导入系统;打印 "%s.%s.%s" % sys.version_info[:3];

gyp 错误!堆栈文件“”,第 1 行

gyp 错误!堆栈导入系统;打印 "%s.%s.%s" % sys.version_info[:3];

gyp 错误!堆栈^

gyp 错误!堆栈 SyntaxError: 无效语法

【问题讨论】:

    标签: node.js sqlite electron rebuild


    【解决方案1】:

    根据您正在使用Python 3.7 的消息,但这些代码需要Python 2.7 才能运行。

    您可以通过以下方式之一确定 node-gyp 应该使用哪个 Python 版本:

    1. 如果通过npm 调用node-gyp并且您安装了多个版本的Python,那么您可以设置npm 的“python”配置 适当值的关键:

    $ npm config set python /path/to/executable/python 
    
    1. 如果 PYTHON 环境变量设置为 Python 可执行文件的路径,则将使用该版本(如果它是兼容的) 版本。

    2. 如果 NODE_GYP_FORCE_PYTHON 环境变量设置为 Python 可执行文件的路径,则将使用它而不是任何 其他配置或内置的 Python 搜索路径。如果它不是一个 兼容版本,不再搜索。

    您可以在cmd显示环境变量中使用set命令。

    PS:在 Windows 中使用node-gyp 需要Visual C++ build toolsPython 2.7(不支持v3.x.x)和一些配置。你可以

    使用 Microsoft 安装所有必需的工具和配置 windows-build-tools 通过运行npm install -g windows-build-tools from 提升的 PowerShell(以管理员身份运行)。

    见:

    设置python版本:nodejs/node-gyp: Node.js native addon build tool

    环境设置和配置:nodejs-guidelines/windows-environment.md at master · microsoft/nodejs-guidelines

    【讨论】:

      【解决方案2】:

      它显示 node-gyp 在你的系统中使用 python 3。

      但是 node-gyp 需要 python 2。

      你可以在你的 $Path 环境变量中添加 python 2 路径在 python 3 路径之前。

      在 cmd 中输入 which python 确保它是 python 2。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-09-07
        • 1970-01-01
        • 2021-07-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多