为什么在尝试安装时没有安装最新版本的世博会?



我想执行run:android命令,但发现我拥有的expo-cli版本是不是兼容安装run:android命令所需的expoSDK版本;所需SDK版本为41及以上。

expo-cli需要41及以上的sdk是4.4.1,我一直在尝试安装,但它没有很好地工作。输入命令后,安装过程开始,一切似乎都像在其他包中一样安装。但是当检查cli的版本时,它给出的版本与之前相同。

为什么会发生这种情况?

最后一次尝试是卸载并重新安装它。以下是命令及其结果:

$ npm -g uninstall expo-cli

$ npm install -g --force expo-cli
npm WARN using --force I sure hope you know what you are doing.
npm WARN deprecated graphql-tools@3.0.0: This package has been deprecated and now it only exports makeExecutableSchema.nAnd it will no longer receive updates.nWe recommend you to migrate to scoped packages such as @graphql-tools/schema, @graphql-tools/utils and etc.nCheck out https://www.graphql-tools.com to learn what package you should use instead
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated querystring@0.2.0: The
npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.        
npm WARN deprecated fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
npm WARN deprecated uuid@3.0.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
C:UsersUserAppDataRoamingnpmexpo -> C:UsersUserAppDataRoamingnpmnode_modulesexpo-clibinexpo.js
C:UsersUserAppDataRoamingnpmexpo-cli -> C:UsersUserAppDataRoamingnpmnode_modulesexpo-clibinexpo.js
+ expo-cli@4.12.0
added 1646 packages from 751 contributors and updated 3 packages in 243.278s

p。S1:"运行:android"命令给出如下:

$ expo run:androd
"run:androd" is not an expo command -- did you mean build:android?
See "expo --help" for the full list of commands.

理解问题

如果我理解正确;您使用npm install -g expo-cli将Expo-CLI升级到最新版本。这工作得很好,但你的项目仍然打破了上面提到的错误SDK错误?

解决方案似乎您升级了Expo- cli,而不是用于特定项目的Expo SDK版本。

要升级您的项目以使用最新的Expo SDK,请使用命令:expo upgrade.

要将项目升级到特定的Expo SDK,请使用命令:

expo upgrade @{required sdk version}

例如:expo upgrade @41.0.0

升级世博会SDK
如果你落后于几个版本,升级你的项目的Expo SDK版本可能会很困难,因为每次升级中都有大量的破坏性更改和弃用。别担心。本文档链接到每个SDK版本升级中的所有突破性更改。如果可能,我们强烈建议逐步升级SDK版本。这样做将帮助您精确定位在升级过程中出现的损坏和问题。Expo保持了大约6个月的向后兼容性。一旦SDK版本被弃用,您将无法再使用Expo Go应用程序进行开发或通过Expo build构建新的二进制文件。但是,您仍然可以通过eas update发布更新,并使用eas build进行构建。弃用不会影响生产环境中的独立应用。

最新更新