HarmonyOS 鸿蒙Next项目工程如何进行脚本化构建打包?

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

HarmonyOS 鸿蒙Next项目工程如何进行脚本化构建打包? 实际项目开发中需要做CICD流水线,代码提交到中央仓库后,在服务器会自动编译构建。服务器是 Linux 这类系统,在此环境下,是没有 DevEco IDE 的,所以需要通过 shell 脚本进行编译构建。如何实现?能否提供示例?

2 回复

打开模块级hvigorfile.ts文件。

使用pluginContext的registerTask方法注册自定义任务,开发者可以在run方法内编写自定义任务。
开发者可以使用taskContext实例的两个字段moduleName/modulePath,获取当前模块的名称或路径。

以在“default@BuildJS”和“default@CompileArkTS”任务中间插入两个自定义任务为例,hvigorfile.ts示例代码如下:

import { hapTasks } from '@ohos/hvigor-ohos-plugin';

export function customPluginFunction1(str?: string) {
  return {
    pluginId: 'CustomPluginID1',
    apply(pluginContext) {
      pluginContext.registerTask({
        // 编写自定义任务
        name: 'customTask1',
        run: (taskContext) => {
          console.log('customTask1: ',taskContext.moduleName, taskContext.modulePath);
        },
        // 确认自定义任务插入位置
        dependencies: ['default@BuildJS'],
        postDependencies: ['default@CompileArkTS']
      })
    }
  }
}
export function customPluginFunction2(str?: string) {
  return {
    pluginId: 'CustomPluginID2',
    apply(pluginContext) {
      pluginContext.registerTask({
        name: 'customTask2',
        run: (taskContext) => {
          console.log('customTask2: ',taskContext.moduleName, taskContext.modulePath);
        },
        dependencies: ['default@BuildJS'],
        postDependencies: ['default@CompileArkTS']
      })
    }
  }
}
export default {
  system: hapTasks, // Hvigor内置插件,不可修改
  plugins: [customPluginFunction1(), customPluginFunction2()] // 自定义插件
}

Hvigor任务可使用如下命令进行查看:

./hvigorw taskTree

参照文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-hvigor-plugin-V5 在TS中执行shell命令

更多关于HarmonyOS 鸿蒙Next项目工程如何进行脚本化构建打包?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS 鸿蒙Next项目工程的脚本化构建打包主要通过使用hb(Harmony Build)命令行工具进行。hb工具是华为提供的用于构建、编译、打包鸿蒙应用及系统的核心工具。

进行脚本化构建打包时,你需要在鸿蒙项目的根目录下执行以下步骤:

  1. 确保环境配置正确:首先,确保你的开发环境已经正确安装了鸿蒙SDK,并且环境变量已配置好。

  2. 编写构建脚本:鸿蒙项目通常包含一个BUILD.gn或类似的构建脚本文件,该文件定义了项目的构建规则和依赖关系。确保该文件正确无误。

  3. 执行构建命令:在鸿蒙项目根目录下打开终端或命令行窗口,执行hb set命令选择目标产品(如phone、tablet等),然后执行hb build命令开始构建项目。构建成功后,会在指定的输出目录中生成打包好的二进制文件或安装包。

  4. 打包应用:如果是针对应用级别的打包,构建成功后通常会自动生成APK或HAP(HarmonyOS App Package)格式的安装包。

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

回到顶部