DevEco Studio 5.0.0更新后,如何根据迁移指导完成旧项目的迁移—来自陈新老师直播间?

阅读 883
avatarAI BotBETA

在DevEco Studio 5.0.0更新后,根据迁移指导完成旧项目的迁移,可以按照以下步骤进行:

自动迁移

  1. 打开历史工程

    • 升级DevEco Studio后,打开需要迁移的历史工程。
  2. 触发迁移提示

    • 在右侧Notifications栏会出现“Sync failed.”同步失败提示。
    • 点击“Migrate Assistant”或“Actions”,选择“Start automatic configuration migration”进入自动化迁移。
  3. 执行自动迁移

    • 在弹窗中点击“Migrate”启动自动化迁移。
    • 系统将自动处理迁移任务,包括SDK、Node.js、Hvigor、OHPM等工具链的合一打包及配置更新。
  4. 验证迁移结果

    • 待工程重新完成同步,并无其他报错提示,即为迁移成功。
    • 若自动化迁移出现报错,可参考FAQ或进行手动迁移。

手动迁移

  1. 备份工程

    • 在迁移前,请对工程进行备份,以避免数据丢失。
  2. 删除旧配置文件

    • 若工程为NPM管理的API 8/9工程,请先按照适配OHPM包管理完成升级。
    • 进入工程级build-profile.json5文件,删除compileSdkVersion配置(若工程为Openharmony工程,则无需删除)。
    • 在左侧工程目录中删除hvigorwhvigorw.bat文件,并删除hvigor目录下的hvigor-wrapper.js文件。
  3. 更新配置文件

    • 进入hvigor > hvigor-config.json5文件中,新增modelVersion字段,其值为"5.0.0"。
    • 删除hvigorVersion字段、dependencies中的@ohos/hvigor-ohos-pluginrollup字段(如有)。
    • 在工程级oh-package.json5文件中,新增modelVersion字段,其值为"5.0.0"。
    • local.properties文件中,删除HarmonyOS SDK配置(若工程为Openharmony工程,则无需执行此步骤)。
  4. 修改SDK版本

    • build-profile.json5文件中compileSdkVersion字段删除(如已删除,则忽略此步)。
    • compatibleSdkVersion字段从app字段下迁移到当前选中的product中。
    • compatibleSdkVersiontargetSdkVersion(若已配置)从9改为4.0.0(10),并配置runtimeOS
  5. 同步工程

    • 点击编辑界面上方“Sync now”或进入菜单栏点击“File > Sync and Refresh Project”,重新进行工程同步。
    • 若无其他报错,至此历史工程手动迁移完成。

注意事项

  • 一键升级:一键升级只针对当前选择的product生效。如有多个product,需要分别切换不同product后,按照手动升级的方式对工程进行升级。
  • ArkTS语法:从DevEco Studio 4.0 Release版本开始,代码编辑器及编译构建过程增强了对ArkTS语法规范的检查。如果历史工程中存在不符合ArkTS语法规范的代码,在迁移完成后可能会报错,需根据具体报错信息修正。
  • 低代码界面转换:如果历史工程包含低代码方式开发的界面,在迁移完成后,需要将这部分低代码开发的界面转换为ArkTS代码,并修正相关报错后才可以正常编译。

按照以上步骤,您应该能够顺利完成DevEco Studio 5.0.0更新后旧项目的迁移工作。

1 个回答

首先,查看 DevEco Studio 的官方文档中关于版本更新的迁移指南部分。通常会有详细的步骤说明,包括可能需要修改的配置文件、API 变化的处理等。按照指南逐步检查旧项目中的代码和配置,对不兼容的部分进行修改。例如,如果有 API 变动,找到对应的旧代码位置并根据新的 API 进行调整。同时,注意项目的依赖项是否需要更新以适应新版本的要求。在迁移过程中,可以先在测试环境中进行尝试,确保迁移后的项目能够正常编译和运行。
本文参与了【 HarmonyOS NEXT 技术问答冲榜,等你来战!】,欢迎正在阅读的你也加入。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题