HarmonyOS 鸿蒙Next Flutter模块构建失败

发布于 1周前 作者 bupafengyu 来自 鸿蒙OS

HarmonyOS 鸿蒙Next Flutter模块构建失败

DevEco Studio NEXT Developer Beta2 Build Version: 5.0.3.500, built on July 17, 2024

我们的项目以flutter module的方式集成flutter. 按照如下添加依赖:

dependencies: video_player: git: url: https://gitee.com/openharmony-sig/flutter_packages.git path: “packages/video_player/video_player” path_provider: git: url: https://gitee.com/openharmony-sig/flutter_packages.git path: “packages/path_provider/path_provider”

执行如下命令: flutter build har --debug 后,会报错:

> hvigor ERROR: Schema validate failed. Detail: Please check the following fields. 
{ instancePath: 'modules[2].srcPath', keyword: 'pattern', params: { pattern: '^(\\./|\\.\\./)[\\s\\S]+$' }, message: 'must match pattern "^(\\./|\\.\\./)[\\s\\S]+$"', location: '/Users/joyy/DevEcoStudioProjects/marki-ohos/flutterModule/.ohos/build-profile.json5:40:151' }
{ instancePath: 'modules[3].srcPath', keyword: 'pattern', params: { pattern: '^(\\./|\\.\\./)[\\s\\S]+$' }, message: 'must match pattern "^(\\./|\\.\\./)[\\s\\S]+$"', location: '/Users/joyy/DevEcoStudioProjects/marki-ohos/flutterModule/.ohos/build-profile.json5:52:149' }

切换会旧版DevEco是正常的。 DevEco Studio NEXT Developer Beta1 Build Version: 5.0.3.403, built on June 20, 2024


更多关于HarmonyOS 鸿蒙Next Flutter模块构建失败的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html

2 回复

参考文档:https://gitee.com/openharmony-sig/flutter_samples/blob/master/ohos/docs/04_development/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E6%B7%B7%E5%90%88%E5%BC%80%E5%8F%91%20module.md

5.0.3.500 编译flutter应用报错问题-规避方案:

使用DevEco-Studio打开以下文件 /Applications/DevEco-Studio.app/Contents/tools/hvigor/hvigor-ohos-plugin/src/model/module/core-module-model-impl.js

格式化这个文件

修改方法 findBelongProjectPath(e)

// ...
    findBelongProjectPath(e) {
        if (e === path_1.default.dirname(e)) {
            // throw Error(`Cannot find belonging project path for module at ${e}`);
            return this.parentProject.getProjectDir();
        }
    }
// ...

更多关于HarmonyOS 鸿蒙Next Flutter模块构建失败的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


针对HarmonyOS(鸿蒙)Next Flutter模块构建失败的问题,可能的原因及解决方案如下:

  1. 环境配置问题

    • 确认已正确安装并配置了Flutter SDK及HarmonyOS开发工具链。
    • 检查环境变量是否设置正确,特别是Flutter和Dart的路径。
  2. 依赖冲突

    • 检查pubspec.yaml文件中的依赖项是否有冲突或版本不兼容的情况。
    • 尝试更新或降级有问题的依赖项。
  3. 编译配置

    • 确认build.gradle或相关配置文件中的编译选项是否与HarmonyOS要求一致。
    • 检查是否有特定于鸿蒙的编译配置被遗漏或错误设置。
  4. 代码问题

    • 检查Flutter代码是否有鸿蒙不支持的API或特性。
    • 尝试简化代码或构建一个简单的Flutter应用以排除代码问题。
  5. 缓存问题

    • 清除Flutter的缓存和构建文件,重新构建项目。
    • 重启开发工具或电脑,以解决潜在的缓存或环境问题。

如果以上方法均无法解决问题,可能是鸿蒙开发环境的特定问题或Flutter与鸿蒙的兼容性问题。此时,建议直接联系鸿蒙开发官方支持或访问官网客服获取更专业的帮助。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部