鸿蒙Next中hvigorfile.ts文件如何配置artifactname

在鸿蒙Next开发中,我需要在hvigorfile.ts文件里配置artifactName参数,但不太清楚具体格式和规则。请问应该如何正确设置这个参数?是否支持动态命名(比如包含版本号)?如果配置错误会导致哪些常见问题?求官方文档或示例参考。

2 回复

哈哈,鸿蒙Next里配置artifactname?简单!在hvigorfile.ts的buildOptions里加一行:artifactName: "你的酷炫包名"。记得别手滑写成“artifactName: 我的鸿蒙第一包”,编译会哭的!

更多关于鸿蒙Next中hvigorfile.ts文件如何配置artifactname的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在鸿蒙Next中,hvigorfile.ts 文件用于配置项目构建参数,包括 artifactName(产物名称)。通过修改 artifactName 可以自定义生成的HAP包名称。

配置步骤:

  1. 打开项目根目录或模块目录下的 hvigorfile.ts 文件。
  2. producthap 配置块中设置 artifactName 属性。
  3. 使用字符串或函数动态生成名称。

示例代码:

// 根目录 hvigorfile.ts(配置所有模块)
import { harTasks, ohos, hapTasks } from '@ohos/hvigor-ohos-plugin'

export default {
    system: ohos.system,
    // 配置 product 级别的 artifactName
    product: {
        artifactName: 'MyApp-${versionName}.hap'
    },
    modules: {
        entry: {
            // 模块级配置(可选)
        }
    }
}

// 或在模块级 hvigorfile.ts(如 entry/hvigorfile.ts)
import { hapTasks } from '@ohos/hvigor-ohos-plugin'

export default {
    // 配置 hap 任务的产物名称
    tasks: hapTasks((task) => {
        task.artifactName = 'Custom-${project.name}-${versionName}.hap'
    })
}

参数说明:

  • 支持变量插值,如 ${versionName}${project.name}
  • 动态函数示例:artifactName: (project) => \Dynamic-${project.name}.hap``

注意事项:

  • 确保路径正确,根配置影响全局,模块配置仅对当前模块生效。
  • 变量需在项目配置中正确定义(如 versionNamebuild-profile.json5)。

通过以上配置,构建生成的HAP文件将按指定规则命名。

回到顶部