【问题标题】:Expo commands throwing "Error: Cannot find module 'minizlib'"世博会命令抛出“错误:找不到模块'minizlib'”
【发布时间】:2019-11-21 16:51:35
【问题描述】:

每当我尝试运行诸如expo init 或expo start 甚至只是expo 之类的命令时,它都会响应:

Error: Cannot find module 'minizlib'
Require stack:
- /usr/local/lib/node_modules/expo-cli/node_modules/tar/lib/pack.js
- /usr/local/lib/node_modules/expo-cli/node_modules/tar/lib/create.js
- /usr/local/lib/node_modules/expo-cli/node_modules/tar/index.js
- /usr/local/lib/node_modules/expo-cli/node_modules/@expo/xdl/build/Extract.js
- /usr/local/lib/node_modules/expo-cli/node_modules/@expo/xdl/build/Api.js
- /usr/local/lib/node_modules/expo-cli/node_modules/@expo/xdl/build/xdl.js
- /usr/local/lib/node_modules/expo-cli/build/exp.js
- /usr/local/lib/node_modules/expo-cli/bin/expo.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:625:15)
    at Function.Module._load (internal/modules/cjs/loader.js:527:27)
    at Module.require (internal/modules/cjs/loader.js:683:19)
    at require (internal/modules/cjs/helpers.js:16:16)
    at Object.<anonymous> (/usr/local/lib/node_modules/expo-cli/node_modules/tar/lib/pack.js:28:14)
    at Module._compile (internal/modules/cjs/loader.js:776:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
    at Module.load (internal/modules/cjs/loader.js:643:32)
    at Function.Module._load (internal/modules/cjs/loader.js:556:12)
    at Module.require (internal/modules/cjs/loader.js:683:19)

我已经尝试安装和重新安装 minizlib,以及 expo、expo-cli、npm 和 node,但没有任何效果。 任何帮助将不胜感激。

操作系统:Ubuntu 18.04.2

【问题讨论】:

  • brew install node brew install watchman
  • @hongdevelop 这应该修复 expo 还是作为 expo 的替代品?
  • 这些是您使用博览会所需要的。
  • @hongdevelop 没用

标签: javascript node.js react-native npm expo


【解决方案1】:

安装库

npm install -g minizlib

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,找不到“minizlib”。此处发布的解决方案或有关此问题的其他线程均未解决此问题。

    但是,我想通了。这对我有用。它非常简单。

    • Expo 运行所需的所有模块都应位于 /usr/local/lib/node_modules/expo-cli/node_modules/
    • 所以,转到您的主目录并运行npm install minizlib@2.1.0。 这会将模块文件放在主目录中。 (我说家 目录,以便 npm install 不会将文件杂乱无章地放入其中 您之前正在处理的目录)
    • 现在,您需要将模块文件夹复制并粘贴到 npm 文件夹中 在运行 expo 命令时正在寻找。在你的情况下 /usr/local/lib/node_modules/expo-cli/node_modules/

    这解决了我的问题。如果它对其他人有用,请为我验证它。

    【讨论】:

      【解决方案3】:

      我遇到了同样的问题,我在external forum. 中找到了解决方法,感谢@parkerroanm 那里的回答。

      无论如何,这是我解决它的方法(来自我找到的答案):

      1. 我使用以下命令卸载了 expo-cli:sudo npm uninstall -g expo-cli 这实际上并没有卸载 expo,我无能为力。所以我用这个命令删除了文件夹:sudo rm -r /usr/local/lib/node_modules/expo-cli
      2. 然后使用 yarn 重新安装:yarn global add expo-cli --save
      3. 我更新了.bashrc 中的PATH,将export PATH="$(yarn global bin):$PATH" 包含在文件底部。

      这为我解决了这个问题。

      这似乎都源于安装时的权限错误 锋利的图书馆。

      【讨论】:

      • 感谢您改进我的回答。我是巴西人,我还在学习英语..
      【解决方案4】:

      我有同样的问题。我使用nvm install 10 降级到节点的第 10 版(如果您没有 NVM,请查看它here 它非常有用)然后使用npm install -g expo-cli 重新安装 expo-cli。这最终为我解决了这个问题。

      注意:此降级是暂时的,如果您想将其设为默认版本,则必须运行 nvm alias default 10

      【讨论】:

        猜你喜欢
        • 2020-01-11
        • 2020-06-25
        • 1970-01-01
        • 2019-04-26
        • 2017-03-02
        • 1970-01-01
        • 2019-12-12
        • 2018-02-26
        • 2016-01-27
        相关资源
        最近更新 更多