当前位置:   article > 正文

【HarmonyOS NEXT】构建APP或者module时,如何插入自定义的shell或Python脚本_default@compilearkts...

default@compilearkts...

【关键字】

构建 / 插入 / Shell / Python / 脚本 / hvigorfile.ts

【问题描述】

在构建APP或者module时需要插入自己的Shell或者Python脚本,请问是要放哪呢?

【解决方案】

打开模块级hvigorfile.ts文件。

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

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

  1. import { hapTasks } from ‘@ohos/hvigor-ohos-plugin’;
  2. export function customPluginFunction1(str?: string) {
  3. return {
  4. pluginId: ‘CustomPluginID1’,
  5. apply(pluginContext) {
  6. pluginContext.registerTask({
  7. // 编写自定义任务
  8. name: ‘customTask1’,
  9. run: (taskContext) => {
  10. console.log('customTask1: ',taskContext.moduleName, taskContext.modulePath);
  11. },
  12. // 确认自定义任务插入位置
  13. dependencies: [‘default@BuildJS’],
  14. postDependencies: [‘default@CompileArkTS’]
  15. })
  16. }
  17. }
  18. }
  19. export function customPluginFunction2(str?: string) {
  20. return {
  21. pluginId: ‘CustomPluginID2’,
  22. apply(pluginContext) {
  23. pluginContext.registerTask({
  24. name: ‘customTask2’,
  25. run: (taskContext) => {
  26. console.log('customTask2: ',taskContext.moduleName, taskContext.modulePath);
  27. },
  28. dependencies: [‘default@BuildJS’],
  29. postDependencies: [‘default@CompileArkTS’]
  30. })
  31. }
  32. }
  33. }
  34. export default {
  35. system: hapTasks, // Hvigor内置插件,不可修改
  36. plugins: [customPluginFunction1(), customPluginFunction2()] // 自定义插件}

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

./hvigorw taskTree

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/329709
推荐阅读
相关标签
  

闽ICP备14008679号