有依赖关系如下:
HAP HSP1–>HSP2|------------ ->HSP2
HSP2含有动态路由工具类,分别被HAP和HSP1引用,HSP1实现了界面组件,期望通过动态的方式,在HSP2中加载HSP1,加载的参数从HAP传入
另外,在HAP的build-profile.json5的packages中配置 @ohos/hsp1,及在oh-package.json5的depenencies中配置@ohos/hsp1、@ohos/hsp2,配置及引用路径都不存在问题,编译没有问题
在运行时,HSP2却无法加载HSP1,但把HSP都替换为HAR时就能正常加载
问,如何实现HSP动态加载HSP
HSP不支持转移依赖即:HAP-\>HSP1-\>HSP2-\>HSP3,这里的HSP2和HSP3不能转移到HAP上面。转移依赖的整个链路上只能有HAR,不能跨越HSP转移。即:HAP-\>HAR1-\>HAR2-\>HSP-\>HAR3-\>HAR4HAR1对HAR2的依赖可以转移到HAP上,HAR3对HAR4的依赖可以转移到HSP上,但是,不能将HAR3或HAR4转移到HAP上。
可参考文档内容:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/arkts-dynamic-import-0000001829010166\#ZH-CN\_TOPIC\_0000001829010166\_\_动态import实现中的关键点