HarmonyOS 鸿蒙Next 子Har包在运行时无法打入Entry

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

HarmonyOS 鸿蒙Next 子Har包在运行时无法打入Entry

我在使用Navigation实现页面跳转到子Har包内的页面时,发现子Har包一直无法动态加载, <pre style="position: relative;"><code class="language-javascript hljs ">public static async push(router: RouterModel): Promise&lt;<span class="hljs-keyword">void</span>&gt; { <span class="hljs-keyword">const</span> harName = router.builderName.substring(<span class="hljs-number">0</span>, router.builderName.lastIndexOf(<span class="hljs-string">"_"</span>)); <span class="hljs-comment">//HarName值为aircf_cert_creation</span> <span class="hljs-comment">//Dynamically</span> import the page to be redirected to.await import(harName) .then((ns: ESObject): Promise&lt;<span class="hljs-keyword">void</span>&gt; =&gt; ns.harInit(router.builderName)) .catch((e: <span class="hljs-built_in">Error</span>) =&gt; { <span class="hljs-comment">//抛出异常 </span> Logger.error(<span class="hljs-built_in">JSON</span>.stringify(e)) }); RouterModule.getRouter(router.routerName).pushPath({ name: router.builderName, param: router.param }); } }</code><button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button></pre> <p> 在跳转时抛出异常: ReferenceError: Cannot find module 'aircf_cert_creation' imported from 'com.xdja.aircerthm/entry@aircf_router_common/ets/utils/RouterModule'.@2e98acfc

在Entry模块的entry/build/default/cache/default/default@CompileArkTS/esmodule/debug/filesInfo.txt文件中找不到aircf_cert_creation模块。这个模块aircf_cert_creation没有被打入到Entry的包里。


更多关于HarmonyOS 鸿蒙Next 子Har包在运行时无法打入Entry的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于HarmonyOS 鸿蒙Next 子Har包在运行时无法打入Entry的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


针对HarmonyOS 鸿蒙Next中子Har包在运行时无法打入Entry的问题,这通常涉及多个层面的检查与调整。以下是一些可能的原因及解决方案:

  1. 版本兼容性:确保所引用的Har包与当前鸿蒙系统的版本兼容。不同版本的鸿蒙系统可能对Har包有不同的要求或限制。
  2. 路径配置:检查Har包及资源的路径配置是否正确。路径错误可能导致Har包无法正确加载。
  3. 依赖冲突:检查项目中是否存在与Har包中相同的库但版本不同的情况,这可能导致运行时冲突。
  4. 配置问题:检查项目的配置文件(如config.json),确保Har包的配置信息已正确集成,包括必要的权限、功能声明等。
  5. 编译环境问题:尝试清理并重新编译项目,有时IDE或编译环境的缓存可能导致问题。

如果经过上述检查后问题依旧无法解决,建议联系官网客服获取进一步的技术支持。官网地址是:https://www.itying.com/category-93-b0.html 。他们将能够提供更专业的帮助,以定位并解决问题。

回到顶部