【问题标题】:'expo' is not recognized as an internal or external command'expo' 未被识别为内部或外部命令
【发布时间】:2019-03-14 20:55:55
【问题描述】:

运行npm install -g expo-cli 并成功全局安装软件包后,expo 仍然无法识别为内部或外部命令。有谁知道我如何使用 Windows 10 解决这个问题,或者如何使用路径变量之类的东西。

【问题讨论】:

  • 你找到解决办法了吗?
  • 如果使用 YARN 安装,请将 C:\Users\{USER}\AppData\Local\Yarn\bin 添加到路径

标签: javascript ios react-native expo


【解决方案1】:

这对我有用:

1.下载最新版本的nodejs - https://nodejs.org/en/download/ 2.安装nodejs后重启你的电脑 3.使用-npx expo-cli init projectName 生成一个新项目 4.cd项目名称 5.npm 开始

【讨论】:

    【解决方案2】:

    可能唯一缺少的就是将 expo 可执行文件添加到您的路径

    对于 Windows 10,您只需将 npm 文件夹添加到您的路径环境变量。

    1. 按 Windows 键并搜索 Environment variables
    2. System variables 下的Path 变量内,添加一个新的 具有此内容的条目(条目以分号分隔)不带 /node_modules

    %USERPROFILE%\AppData\Roaming\npm

    或者如果您使用的是 yarn C:\Users\{USER}\AppData\Local\Yarn\bin(如上面提到的@Qwerty)

    1. 打开一个新的命令提示符并输入

    > expo

    您将看到如下内容:

    【讨论】:

    • 这个答案解决了我的问题,但是为什么在路径变量一段时间后删除了键“%USERPROFILE%\AppData\Roaming\npm”
    • 如果您已经有路径变量,您可以通过键入分号来添加以上内容
    • 我必须以管理员身份运行 Powershell,然后“set-ExecutionPolicy RemoteSigned”
    • 这个答案可以救命!我被这个问题困扰了一年,直到我看到这篇文章!
    【解决方案3】:

    如果您使用的是yarn global add expo-cli,请尝试npm install -g expo-cli

    我不知道为什么,但是当我进入 C:\Users\%{user}%\AppData\Roaming\npm 时,没有 expo 包(以及我认为我通过 yarn 全局安装的其他包),但是我通过 npm 全局安装了其他包。

    如果将 C:\Users\%{user}%\AppData\Roaming\npm 添加到 PATH 变量中不起作用,请试一试。

    【讨论】:

      【解决方案4】:

      如果您需要在不更新环境变量的情况下运行 Expo 命令的解决方案,请在终端上使用以下 Windows 系统命令:

      R:\> C:\Users\{user}\AppData\Roaming\npm\expo.cmd init {projectname}
      

      直接指向expo.cmd文件的地方,而不是在环境变量中指定。

      并在 package.json 中将 expo 更新为 C:\Users{user}\AppData\Roaming\npm\expo.cmd 以运行项目。

      // package.json
      "scripts": {
          "start": "C:\\Users\\{user}\\AppData\\Roaming\\npm\\expo.cmd start",
          "android": "C:\\Users\\{user}\\AppData\\Roaming\\npm\\expo.cmd start --android",
          "ios": "C:\\Users\\{user}\\AppData\\Roaming\\npm\\expo.cmd start --ios",
          "web": "C:\\Users\\{user}\\AppData\\Roaming\\npm\\expo.cmdstart --web",
          "eject": "C:\\Users\\{user}\\AppData\\Roaming\\npm\\expo.cmd eject"
        },
      

      【讨论】:

      • 你能用代码块更清楚地修改答案吗?
      【解决方案5】:

      转到环境变量,然后在用户变量部分找到Path并按编辑按钮,您将看到一个新窗口,按新建并添加以下

      %USERPROFILE%\AppData\Roaming\npm
      

      然后按确定。现在,

      expo --version
      

      【讨论】:

      • 我不知道为什么你的赞成票没有飙升,但谢谢!但是我可以知道为什么这实际上有效吗?
      【解决方案6】:

      我遇到了同样的问题,但“npm install --global expo-cli”没有解决。 全局 CLI 在下面出现 SS 错误 -

      • npm 列表 -g --depth 0

      按照以下步骤解决问题

      1. npm 卸载 --global expo-cli
      2. 已删除全局包导致错误 C:\Users\AppData\Roaming\npm\node_modules\expo-cli
      3. npm install --global expo-cli

      expo cli 工作。 编码愉快!!!

      【讨论】:

        【解决方案7】:

        重新安装 node.js 和 然后在命令提示符下运行npm install -g expo-cli

        【讨论】:

          【解决方案8】:

          这对我有用:

          1. 必须先卸载 node js,然后重新安装。
          2. 您必须运行 npm install expo-cli。

          它会解决你的问题

          【讨论】:

            【解决方案9】:

            如果它仍然不起作用或者您无法访问 npm。尝试使用 Windows PowerShell 设置路径:

            1. 以管理员身份打开 Windows Powershell
            2. 类型:setx path "%path%;C:\Users\USERNAME\AppData\Roaming\npm"

            它对我有用。

            【讨论】:

              【解决方案10】:

              昨晚我第一次安装并运行 "react-native" 项目时,我想知道它是否正常工作,但第二天它显示的错误与您的相同。

              这是我在 Windows 10 操作系统中所做的:

              添加以下路径

              environment variable > System Variables > PATH > C:\Users\YOUR_USERNAME\AppData\Roaming\npm

              现在我在 CMD 中一一运行以下命令:

              i) npm -g uninstall expo-cli --save

              ii) npm install -g expo-cli

              现在启动项目并运行npm start,现在它对我有用。

              我没有尝试过这篇文章,但它也显示了相同问题的解决方案, see here

              【讨论】:

                【解决方案11】:

                使用此命令卸载 expo npm -g uninstall expo-cli --save 并使用此命令重新安装 expo npm install -g expo-cli 然后它会正常工作

                【讨论】:

                  【解决方案12】:

                  对我来说, 我卸载了 node.js,

                  我重新安装了node.js,

                  我跑了npm install -g expo-cli

                  然后运行 ​​expo --version(expo 命令开始工作)。

                  希望这会有所帮助。

                  【讨论】:

                    【解决方案13】:

                    我已在 Windows 10 中通过设置路径 C:\Users\[USERNAME] 这一行保存我的时间来解决此问题

                    【讨论】:

                      【解决方案14】:

                      像这样添加了这些 npm 路径我有同样的问题,我通过添加环境系统的路径来修复它

                      C:\Users\abobakr\AppData\Roaming\npm
                      

                      在关闭 CMD 并再次打开它之后,相信我应该可以工作

                      【讨论】:

                        【解决方案15】:

                        我可能来不及回答这个问题,但对于寻找相同错误的人来说,这对我有用。

                        1. 如果没有,请安装 yarn。我使用了命令choco install yarn(你必须安装 Chocolatey)。如果您安装了 scoop,scoop install yarn 也可以使用。

                        2. 使用yarn 安装expoyarn global add expo-cli

                        3. expo start 现在应该可以工作了。 yarn startnpm start 也应该可以工作。

                        希望有帮助!

                        【讨论】:

                        • 我有同样的错误,虽然这我还没有想出如何解决它
                        • 这可能是解决方案。但是,设置环境变量可以解决这个问题,所以不需要添加另一个包。无意冒犯,但作为一种有效的解决方案,我会考虑设置 environment variable 而不是安装 yarn
                        【解决方案16】:

                        这是一个更普遍的问题,您的全局节点模块不在您的系统路径中。这个问题就是你要找的:Nodejs cannot find installed module on Windows?

                        【讨论】:

                          【解决方案17】:

                          我昨晚遇到了同样的问题,最近我开始了我的 ReactNative 之旅。所以,可能会有更好的答案。

                          如果您遵循 ReactNative 官方文档,第一次 npm start 工作正常,后续会抛出错误,说 expo 无法识别。我通过运行 expo start 而不是 npm start 解决了这个问题(这基本上是同一件事,但由于某种原因不起作用)。

                          所以,我的看起来像是一种变通方法,而不是解释为什么会发生这种情况或如何永久修复它。

                          【讨论】:

                            猜你喜欢
                            • 2020-04-19
                            • 1970-01-01
                            • 2019-10-12
                            • 2014-04-29
                            • 1970-01-01
                            • 1970-01-01
                            • 2013-10-06
                            • 2013-10-11
                            • 2013-01-25
                            相关资源
                            最近更新 更多