【问题标题】:Error: `C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\MSBuild.exe` failed with exit code: 1错误:`C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\MSBuild.exe` 失败,退出代码:1
【发布时间】:2019-02-05 10:56:31
【问题描述】:

我正在尝试使用npm install 命令安装所有依赖项,但在安装时出现如下错误:

ling source file ..\src\threaded_callback_invokation.cc)
c:\applatest\applatest\node_modules\nan\nan.h(1478): warning C4996: 'node::MakeCallback': was declared deprecated (comp
iling source file ..\src\threaded_callback_invokation.cc) [C:\appLatest\appLatest\node_modules\voicemeeter\node_modules
\ffi\build\ffi_bindings.vcxproj]
  c:\users\alliancetek\.node-gyp\10.15.0\include\node\node.h(176): note: see declaration of 'node::MakeCallback' (compi
  ling source file ..\src\threaded_callback_invokation.cc)
gyp ERR! build error
gyp ERR! stack Error: `C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\MSBuild.exe` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:262:23)
gyp ERR! stack     at ChildProcess.emit (events.js:182:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:240:12)
gyp ERR! System Windows_NT 10.0.17763
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\appLatest\appLatest\node_modules\voicemeeter\node_modules\ffi
gyp ERR! node -v v10.15.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: 7zip-bin-linux@1.3.1 (node_modules\7zip-bin-linux):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for 7zip-bin-linux@1.3.1: wanted {"os":"linux","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: 7zip-bin-mac@1.0.1 (node_modules\7zip-bin-mac):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for 7zip-bin-mac@1.0.1: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ffi@2.2.0 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the ffi@2.2.0 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\alliancetek\AppData\Roaming\npm-cache\_logs\2019-02-05T10_40_31_378Z-debug.log

在许多解决方案中,我尝试了npm install node-gyp 或卸载或重新安装它,但我遇到了同样的错误。

也可以尝试以下步骤:

  • 安装最新版本的 Python(可能不相关????)和“Microsoft Visual C++ Redistributable for Visual Studio 2017”,当然还有 Node.js 和 NPM;
  • 作为管理员: $ cd "C:\Program Files\nodejs\node_modules\npm" $ npm install node-gyp
  • $ npm 配置设置 msvs_version 2015 --global 请注意,我有 VS 2017,但将其配置为 2017 版将不起作用。不知道为什么。
  • 作为管理员: $ npm install -g node-sass 最后,最后一次检查: $ node-sass -v

并尝试使用npm install --production windows-build-tools,但任何选项都没有得到任何结果。

尝试了所有解决方案,但都没有工作。我已经安装了带有 2.7.15、vc++ 构建工具、Visual Studio 2017 和所有必需组件的 python。

我正在寻找过去两周的解决方案,请建议我正确答案

【问题讨论】:

  • 请指定您要安装的依赖项。如果多次尝试隔离安装失败的包。
  • 我的项目在 aurelia js 中。所以这就是为什么我添加了 aurelia 问题。如果我添加了那么它有一些意义@avrahamcool
  • 我只是尝试安装“npm install”命令,因为没有它我无法安装任何依赖项,并且我在“npm install”命令本身@Mathyn 中面临问题
  • 如果您运行 npm install,您将安装基于项目的 package.json 部分的依赖项。请与我们分享这个 package.json。
  • 在这里你可以查看我的 package.json 文件:dropbox.com/s/tobs3ci886fm47p/pacakge.txt?dl=0

标签: node.js npm npm-install


【解决方案1】:
  1. 运行:npm cache clean --force
  2. 删除节点模块
  3. 删除 packagelock.json 和 yarn.lock(如果有)
  4. 运行:npm install

【讨论】:

  • 我遵循相同的步骤但得到相同的错误。这里我的日志放在一个文件中
  • 你可以在这里查看日志:dropbox.com/s/txaccpwda6t7n5m/logs.txt?dl=0
  • 删除 ~/.node-gyp 文件夹,然后删除 ~/.npmrc 文件。重新启动服务器并在项目文件夹中重新运行 npm install ,请检查服务器节点版本 package.json 文件,而不是本地环境正在运行的文件。因此,请检查您在本地运行的内容:
  • 请参考这个,它会帮助你[stackoverflow.com/questions/52089305/…]
  • 我已从路径中删除“node-gyp”文件夹:C:\appLatest\appLatest\node_modules\npm\node_modules 并从路径“C:\appLatest\appLatest\node_modules\npm”中删除“npmrc” \html\doc\文件”。让我知道我是否选择了错误的路径。我不清楚版本检查的概念。我该如何检查?
【解决方案2】:

这些答案都不适用于 Windows 10 和 Node 13。我必须卸载 Visual Studio 和 Build Tools,然后卸载 Node 13。然后,我从 Roaming 中删除了 npm 和 npm-cache,然后重新安装 Node 11.6 并选择安装巧克力。此后它对我有用。

【讨论】:

  • 我在 Win 10 上遇到了同样的问题 - 问题又是节点的版本。我为 Windows 安装了一个节点版本管理器:github.com/coreybutler/nvm-windows/releases 然后我安装了 v.10(因为这是一个 Ang7 项目,我之前有 v.12): nvm install 10 nvm use 10.0.0 这解决了问题。如果您在多个存储库中工作,则可以使用管理器快速切换节点版本。
  • 在我降级到 Node 10.x 后我的工作正常。我尝试过的其他任何方法都没有真正奏效。
  • 是的,这对我有用,显然,当我勾选要求安装巧克力和其他 c++ 库的复选框时,它下载了任何缺少的东西,我能够做到npm install
【解决方案3】:
  • 运行 npm install --production windows-build-tools 可能需要更长的时间来安装,为我的朋友工作

  • 重新安装 nodeJs 对我有用

【讨论】:

    【解决方案4】:

    以管理员权限在 cmd 中运行以下命令:

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

    【讨论】:

    • 感谢您的建议,它可能会提供一些有限的短期帮助。一个正确的解释would greatly improve 其长期价值,通过展示为什么这是解决问题的好方法,并将使其对未来有其他类似问题的读者更有用。请edit您的回答添加一些解释,包括您所做的假设。
    【解决方案5】:

    您可以尝试将 Node.js 降级到旧版本,我使用的是 v14.16.1LTS 版本。 切换到 v10.24.1 后,它工作了。

    要更改您的节点版本,请检查How to change to an older version of Node.js

    记得先删除你的node_modules文件夹和package-lock.jsonyarn.lock

    您也可以尝试从 yarn 切换到 npm 或从 npm 切换到 yarn。

    【讨论】:

      猜你喜欢
      • 2020-01-08
      • 1970-01-01
      • 2022-01-27
      • 2019-02-04
      • 2017-04-03
      • 2018-02-07
      • 1970-01-01
      • 2018-09-15
      • 1970-01-01
      相关资源
      最近更新 更多