HarmonyOS 鸿蒙Next 使用别名安装第三方库报错
ohpm install 报错信息:
ohpm ERROR: local dependency "AliyunFaceGuard" found in "*\entry\oh-package.json5" does not match the actual name "aliyunfaceguard" of its oh-package.json5
ohpm ERROR: Install failed, detail: There are some dependency names that are inconsistent with the actual package names.
.ohpmrc
## 支持配置含有group的仓库,优先匹配
#@group1:registry=
#@group2:registry=
### 代理配置
#no_proxy=
#http_proxy=
#https_proxy=
### 证书校验配置
## 是否校验https仓库的证书,取值:true|false, default: true, 为true时需要配置ca_files证书路径
strict_ssl=true
#ca_files=
### 发布配置
## 因为registry支持配置多仓,所以此处需明确指定发布仓
publish_registry=
## 用户发布三方库的发布id,从云端个人中心获取
#publish_id=
## 用户私钥文件路径,公钥需在云端进行配置
#key_path=
### 缓存路径, 默认在用户目录下的.ohpm/cache
#cache=
### 日志级别, 取值:debug|info|warn|error, 默认: info
log_level=info
### 网络请求超时时间, 单位ms, 默认为60s
fetch_timeout=60000
### 并发参数配置
## 最大并发量
max_concurrent=50
## 出错重试次数
retry_times=1
## 重试间隔时间, 单位:ms
retry_interval=1000
## 是否开启默认的冲突处理机制
resolve_conflict=true
## 是否默认安装工程下所有模块的依赖
install_all=true
## 其他功能开关
### 启用跨进程锁
enable_cross_process_lock=true
### 启用依赖名称校验
enforce_dependency_key=false
### 启用依赖扫描功能
ensure_dependency_include=false
### 启用包内.har/.tgz依赖配置路径检测
disallow_nested_package=false
### 开启overrideDependencyMap中相对路径自动转换功能
odm_r2_project_root=false
### compatibleSdkVersion等兼容性字段检测日志等级
compability_log_level=warn
### 流式上传阈值(大于此阈值使用流式上传),单位:mb,默认:5,范围:[0, 300]
use_stream_threshold_size=5
开发工具:
DevEco Studio NEXT Beta1
Build #DS-233.14475.28.36.503800
Build Version: 5.0.3.800, built on September 4, 2024
Runtime version: 17.0.10+1-b1087.17 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Windows 11.0
GC: G1 Young Generation, G1 Old Generation
Memory: 2048M
Cores: 8
Registry:
idea.plugins.compatible.build=IC-233.14475.28
无法使用别名安装第三方,5.0.3.700版本还是正常的
注意useNormalizedOHMUrl 这个配置 优先级大于enforce_dependency_key
”1、从ohpm客户端5.0.7开始,若项目级build-profile.json5文件中app字段下配置了useNormalizedOHMUrl开关且useNormalizedOHMUrl=true,则该配置优先级高于enforce_dependency_key,如果ohpm检测到依赖别名与oh-package.json5中name不一致时,会报错提示并中止程序执行;若未配置useNormalizedOHMUrl或useNormalizedOHMUrl=false时,是否校验别名一致性则根据enforce_dependency_key配置决定。
2、项目级build-profile.json5文件中,products节点下任意product字段配置了useNormalizedOHMUrl=true,则ohpm中useNormalizedOHMUrl开关会被设置为true,即ohpm检测到项目中依赖别名与oh-package.json5中name不一致时,会报错提示并中止程序执行。“
enforce_dependency_key配置不能用了吗
问题是我用了,没有效果
针对HarmonyOS 鸿蒙Next 使用别名安装第三方库报错的问题,这通常是由于在oh-package.json5
中定义的依赖名称与实际第三方库的oh-package.json5
中的名称不一致所导致的。
为了解决这个问题,请按照以下步骤操作:
- 检查名称一致性:确保
oh-package.json5
中依赖的名称与第三方库的实际名称完全一致,包括大小写和拼写。 - 更新依赖:如果第三方库的名称已经更改,请更新
oh-package.json5
中的依赖名称以匹配新的名称。 - 重新安装依赖:在DevEco Studio中,尝试清理并重新安装项目依赖,以确保所有依赖都正确加载。
- 检查版本兼容性:确保你正在使用的HarmonyOS版本与第三方库兼容。
如果上述步骤无法解决问题,可能是由于其他配置错误或系统问题导致的。此时,你可以尝试查阅HarmonyOS的官方文档或开发者论坛,看是否有其他开发者遇到并解决了类似的问题。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html 。