HarmonyOS鸿蒙Next中配置useNormalizedOHMUrl为true后编译报错

HarmonyOS鸿蒙Next中配置useNormalizedOHMUrl为true后编译报错 操作步骤:

  1. 项目下两个module,工程目录下oh-package.json5的dependencies中配置了’common’: ‘file:common’
  2. common模块内部存在类互相引用,import { ResPayAdvertising, User } from ‘common/src/main/ets/viewmodel/parkingData/ResData’,编译报错
  • Try the following: > Check whether the module which /Users/trcmix/DevEcoStudioProjects/HfParking/common/src/main/ets/viewmodel/parkingData/ResData.ets belongs to is correctly configured. > Check the corresponding file name is correct(including case-sensitivity).

COMPILE RESULT:FAIL {ERROR:2 WARN:516}


更多关于HarmonyOS鸿蒙Next中配置useNormalizedOHMUrl为true后编译报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复
useNormalizedOHMUrl:true 使用标准化的OHMUrl格式。

一个ets文件在编译后会成为安装包的一部分,这个ets文件对应的字节码称为一个字节码段,OHMUrl是用来定位一个字节码段的标识。

工程里所有的OHMUrl格式需统一。若引用了HAR/HSP,需确保HAR/HSP的OHMUrl格式与工程级build-profile.json5中的配置一致。

从ide的5.0.3.800版本开始,使用标准化的OHMUrl格式时,构建HAR时byteCodeHar字段缺省默认值为true,即默认构建字节码HAR;noExternalImportByPath字段缺省默认值为true,即不支持跨模块导入方式。

可以确认下是否使用跨模块导入方式,如果使用则配置useNormalizedOHMUrl:true无法正确编译。

一个工程多module没问题,但是不能跨模块导入

更多关于HarmonyOS鸿蒙Next中配置useNormalizedOHMUrl为true后编译报错的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,配置useNormalizedOHMUrltrue后编译报错可能是由于以下原因之一:

  1. 配置文件错误:useNormalizedOHMUrl参数可能在配置文件中未正确设置或与其他配置项冲突。检查config.json或相关配置文件,确保参数格式和位置正确。

  2. 依赖库版本不匹配:useNormalizedOHMUrl可能依赖于特定版本的库或工具链。确保所有相关库和工具链的版本与鸿蒙Next SDK兼容。

  3. 代码逻辑问题:useNormalizedOHMUrltrue后,代码中可能存在未处理的逻辑分支或未适配的接口调用。检查相关代码,确保所有路径和接口调用已正确处理。

  4. 编译器或工具链问题:编译器或工具链可能存在Bug或未完全支持useNormalizedOHMUrl参数。尝试更新编译器或工具链到最新版本,或查阅相关文档确认支持情况。

  5. 资源文件缺失或错误:useNormalizedOHMUrl可能涉及特定的资源文件或配置,确保这些文件存在且内容正确。

  6. SDK问题:鸿蒙Next SDK本身可能存在Bug或未完全支持useNormalizedOHMUrl参数。查阅SDK更新日志或相关文档,确认是否存在已知问题。

建议通过详细的错误日志进一步定位问题,并参考鸿蒙Next官方文档或开发者社区获取更多信息。

在HarmonyOS鸿蒙Next中,配置useNormalizedOHMUrltrue后编译报错,可能是由于以下原因:

  1. 依赖版本不匹配:确保使用的SDK和依赖库版本与useNormalizedOHMUrl配置兼容。
  2. 配置错误:检查build.gradle或其他配置文件中的useNormalizedOHMUrl设置是否正确。
  3. 代码冲突:某些代码可能与useNormalizedOHMUrl的配置冲突,检查相关代码逻辑。

建议查看编译日志,定位具体错误信息,并根据提示进行修复。如果问题依然存在,可以参考官方文档或社区论坛寻求帮助。

回到顶部