HarmonyOS鸿蒙Next flutter运行flutter build hap提示缺少组件,打包失败。

HarmonyOS鸿蒙Next flutter运行flutter build hap提示缺少组件,打包失败。 【问题描述】: 运行flutter build hap 失败

【问题现象】:报错信息附下图

【版本信息】: DevStudio “6.0”, Flutter-ohos3.22.0,
【尝试解决方案】:1. 从 Flutter分支ohos版本从3.7换到3.22 还是一样

    2. 更改SDK路径也不行参考链接: [https://developer.huawei.com/consumer/cn/forum/topic/0201195562269426173?fid=0109140870620153026](https://developer.huawei.com/consumer/cn/forum/topic/0201195562269426173?fid=0109140870620153026)

cke_6894.png


更多关于HarmonyOS鸿蒙Next flutter运行flutter build hap提示缺少组件,打包失败。的实战教程也可以访问 https://www.itying.com/category-92-b0.html

8 回复

原因可能是开发工具IDE的SDK版本与Command Line Tools的hvigor版本不兼容。

  • 按照官网文档在流水线配置command-line-tools,不配置环境变量DEVECO_SDK_HOME,编译的时候会自动找到command-line-tools的SDK;如果配置了DEVECO_SDK_HOME,就优先找DEVECO_SDK_HOME指向的。
  • IDE的Terminal在打开的时候会注入环境变量DEVECO_SDK_HOME,指向的是ide里的SDK。

在流水线中跑脚本,使用的是command-line-tools的SDK,与hvigor的版本配套;但是在IDE的Terminal中跑脚本,hvigor用的是command-line-tools里的版本,SDK用的是ide里的版本,两者不匹配,故导致报错。升级command-line-tools版本与IDE的SDK版本兼容。

如不能解决问题,运行 flutter doctor -v 检查环境变量配置是否正确。

更多关于HarmonyOS鸿蒙Next flutter运行flutter build hap提示缺少组件,打包失败。的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


修改后还是不对 涉及图片 我又新开一楼 麻烦看下,

1: 查看工程目录下是否存在package.json文件,该文件是Flutter创建HarmonyOS项目时自动生成的。 2: 使用flutter构建下载依赖,在工程目录下执行:flutter build hap,会在ohos工程目录下自动下载依赖包。build hap完成后再使用DevEco Studio再次运行应用工程。

如仍然不行,可以尝试配置下代理。

使用回复方案处理之后报错信息:

cke_3863.png

cke_3408.png

可能因为DevEco Studio 与 command-line-tools 版本不匹配

DevEco Studio 是鸿蒙开发的集成环境,command-line-tools 是配套的命令行工具集,需要保持版本一致才能正常

步骤:在设置中找到 Appearance & Behavior > System Settings > HarmonyOS SDK

找到Command Line Tools选项,勾选与当前DevEco Studio版本一致的工具版本ss

在HarmonyOS Next上运行flutter build hap失败,提示缺少组件,通常是因为Flutter的HarmonyOS适配插件或环境未正确配置。请确保已安装并配置了适用于HarmonyOS Next的Flutter插件或工具链,并检查项目依赖中是否包含必要的HarmonyOS组件。

根据您提供的错误信息截图,核心问题是构建工具链中缺少关键的 llvm-strip 组件。这通常是由于HarmonyOS SDK的Native(C/C++)开发套件(Ohos Native)未正确安装或配置导致的。

解决方案:

  1. 确认并安装Ohos Native组件

    • 打开DevEco Studio,进入 Settings(或Preferences) > SDK Manager > HarmonyOS SDK
    • SDK Platforms 选项卡中,确保您目标API级别的SDK已安装。
    • 切换到 SDK Tools 选项卡。
    • 找到并勾选 Ohos Native 组件(它包含了 llvm 工具链,其中就有 llvm-strip)。
    • 点击 Apply 进行安装。
  2. 验证环境变量

    • 安装完成后,请确认您的系统环境变量 PATH 中包含了Ohos Native工具链的路径。通常路径类似于: {您的SDK安装目录}/toolchains/llvm/bin
    • 您可以在终端中运行 llvm-strip --version 来验证该命令是否可用。
  3. 清理并重新构建

    • 在Flutter项目根目录下,执行以下命令清理构建缓存:
      flutter clean
      
    • 然后再次尝试构建:
      flutter build hap
      

问题根源flutter build hap 在构建过程中需要调用 llvm-strip 工具来处理原生的共享库(.so文件),以优化其体积。当SDK工具链不完整时,此命令无法找到,导致构建失败。

按照以上步骤操作,应该能解决因缺少 llvm-strip 组件而导致的打包失败问题。

回到顶部