【问题标题】:Your project is in SDK version >= 33.0.0, but the expo package version seems to be older您的项目的 SDK 版本 >= 33.0.0,但 expo 包版本似乎更旧
【发布时间】:2021-05-13 20:16:45
【问题描述】:

我无法启动我的 Expo 应用程序。我收到此错误:

Your project is in SDK version >= 33.0.0, but the expo package version seems to be older.
(0 , _config(...).fileExistsAsync) is not a function

周一工作正常。我的 expo cli 和 sdk 版本是 36.0.0,所以是最新的。有没有人也遇到过这个问题并且知道可能的解决方法?

我正在使用 Android Studio 模拟器。

刚刚运行 expo upgrade,它告诉我我已经在使用最新版本,但我还是运行了它,结果如下:

ConfigUtils(...).resolveModule is not a function

【问题讨论】:

    标签: android reactjs react-native sdk expo


    【解决方案1】:

    有两种可能:你全局安装的expo-cli包过时了,或者你项目本身的expo包过时了。

    要解决这个问题,请在您的项目目录中运行 npm ls 并搜索 expo 版本。 如果您使用的是基于 unix 的系统或安装了 grep,您可以使用 npm ls | grep expo 快速完成此操作。

    如果其中任何一个显示的 expo 包版本低于 33.0.0,那么您需要使用 expo update 35.0.0. 更新项目的 expo

    另一方面,如果项目中的expo版本在33.0.0以上,那么全局版本需要更新,可以通过npm install -g expo-cli修复

    https://docs.expo.io/versions/latest/workflow/upgrading-expo-sdk-walkthrough/

    【讨论】:

    • 这不可能是错误,因为就像我上面所说的,我的 cli 和我的 sdk 都是最新的。
    • 显然有两种以上的可能性,因为 OP(和我们)最迟仍然面临这个问题。
    【解决方案2】:

    问题在于 SDKExpo 客户端版本 不匹配。 尝试在终端中使用 sudo 执行此操作并输入密码:

    sudo expo update <version>
    sudo expo start
    

    使用发生错误的最新或最低版本更改 。我的是 37.0.0

    乐于提供帮助。?by RTTSS

    【讨论】:

      【解决方案3】:

      运行这个:

      npm install -g expo-cli
      

      【讨论】:

        【解决方案4】:

        好吧,我自己修好了。即使我有最新的 cli,我也必须再次升级它,然后我必须将 node-modules/metro-config/src/defaults/blacklist.js 中的 blacklist.js 文件更改为:

            var sharedBlacklist = [
          /node_modules[\/\\]react[\/\\]dist[\/\\].*/,
          /website\/node_modules\/.*/,
          /heapCapture\/bundle\.js/,
          /.*\/__tests__\/.*/
        ];
        

        【讨论】:

        • 知道为什么这是必要的吗?
        猜你喜欢
        • 2023-01-05
        • 2016-08-11
        • 2019-10-18
        • 1970-01-01
        • 1970-01-01
        • 2010-12-12
        • 1970-01-01
        • 2022-07-28
        相关资源
        最近更新 更多