HarmonyOS 鸿蒙Next har和hsp的导出路径问题

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

HarmonyOS 鸿蒙Next har和hsp的导出路径问题

背景:  现在有一个test的har或hsp,然后在entry模块的oh-package.json5使用"@test": "file:…/commons/test"进行模块导入,在代码中可以使用import { anything } from '@test’进行引入。  需求:  现在假设test内还有其他的子目录(比如test/A和test/B),可以使用import { anything } from ‘@test/A’、import { anything } from '@test/B’这么引入吗?

3 回复
在本地试了import { anything } from '[@test](/user/test)/B'这种方式是可以的

参考:

dependencies只要声明一次,例如

  "dependencies": {

    "lib": "file:../library"

  }

用的时候:

import { a } from 'lib/A';

import { b } from 'lib/B';

目前还不能忽略src/main/ets这段目录。按照你的需求可以将类型文件放在src同级目录下

不能无视main和ets文件目录,目前增量构建动作等系统构建优化都强依赖ets/js/cpp等固定路径名。

在har和hsp的Index.ets文件中导出需要导出的类,使用时直接import { anything } from 'test', test为har或hsp的模块名称,可参考下面:

cke_2197.png

针对HarmonyOS 鸿蒙Next har和hsp的导出路径问题,以下是专业解答:

在HarmonyOS鸿蒙Next系统中,Har(Harmony Archive)作为静态库模块,主要在编译态复用,其导出路径通常在项目的编译输出目录中,具体路径依赖于项目的配置和构建工具。而Hsp(Harmony Shared Package)作为动态共享包,在运行时复用,其导出路径也类似,但更多关联于动态加载和服务的发布。

对于Har文件,开发者在DevEco Studio等集成开发环境中构建项目时,Har文件会作为编译产物生成在指定的build目录下。

对于Hsp文件,服务开发完成后,开发者需要通过工具将服务封装为HSP文件。这个HSP文件可以发布到服务端或不同的设备上,其路径由开发者在封装和发布过程中指定。

请注意,HarmonyOS鸿蒙Next系统的具体导出路径可能因版本、构建配置和工具链的不同而有所差异。

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

回到顶部