HarmonyOS鸿蒙Next中.ohpmrc仓库地址配置

HarmonyOS鸿蒙Next中.ohpmrc仓库地址配置

官网下载拉的项目,编译没通过,fetch meta info of package ‘@ohos/hamock’ failed - GET [https://mirrors.tools.huawei.com/npm/@ohos/hamock](https://mirrors.tools.huawei.com/npm/@ohos/hamock) 404( Not Found )

3 回复

【背景知识】

  • ohpm 作为 OpenHarmony 三方库的包管理工具,支持 OpenHarmony 共享包的发布、安装和依赖管理。

  • .ohpmrc 是 ohpm 的配置文件,ohpm 从命令行和 .ohpmrc 文件中获取其配置设置。ohpm config 命令可用于修改用户级 .ohpmrc 文件的内容。

【解决方案】

  1. 排查 .ohpmrc 中是否配置了正确的中心仓地址。

    • 项目级配置文件:
      /path/to/my/project/.ohpmrc
      
    • 用户级配置文件:
      • MacOS 默认位置:
        ~/.ohpm/.ohpmrc
        
      • Windows 操作系统默认位置:
        C:\Users\用户名\.ohpm\.ohpmrc
        
    ### 仓库配置,支持配置多个地址,使用英文逗号分隔。
    registry=https://ohpm.example.com/ohpm,https://repo.example.com/ohpm
    
  2. 若无法访问中心仓,需要确认当前网络连接是否正常,保证可以访问公网。

  3. 排查网络代理问题,如网络环境需要使用代理,ohpm 代理信息,在 http_proxy 和 https_proxy 中,将 user、password、proxyserver 和 port 按照实际代理服务器进行修改。示例如下:

    http_proxy=http://用户名:密码@域名或IP:端口
    https_proxy=http://用户名:密码@域名或IP:端口
    

    如果 password 中存在特殊字符,如 @、#、* 等符号,可能导致配置不生效,建议将特殊字符替换为 ASCII 码,并在 ASCII 码前加百分号 %。常用符号替换为 ASCII 码对照表如下:

    特殊符号 ASCII码
    ! %21
    @ %40
    # %23
    $ %24
    & %26
    * %2A
  4. 确认以上配置成功后,正常就可以下载 OpenHarmony 三方库中心仓 中的库,但是如果想要下载的库没有上传到官方中心仓,例如阿里云的 mPaas,需要在 .ohpmrc 中根据 group 指定组织的仓库地址。支持多个仓库地址,以英文逗号间隔,且优先级大于 registry 配置,多个仓库地址的优先级按照配置顺序排序。

ohpm 默认忽略 SSL 证书校验,如果需要开启,则需要在 .ohpmrc 中配置有效的的证书路径,否则也会导致下载失败。

【常见FAQ】

Q:执行 ohpm install 安装依赖成功,但是没看到安装的依赖。 A:注意执行 ohpm install 的路径,oh-package.json5 分为模块级和工程级,需要在执行安装命令的路径下查看 oh-package.json5 和 oh_modules。

更多关于HarmonyOS鸿蒙Next中.ohpmrc仓库地址配置的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


{
  "registry": "https://your.custom.registry",
  "scopedRegistries": [{
    "scope": "@example",
    "url": "https://private.registry"
  }]
}

修改后需重启IDE生效。

在HarmonyOS Next中遇到.ohpmrc仓库配置问题导致依赖包获取失败时,可以按以下步骤解决:

  1. 检查项目根目录下的.ohpmrc文件,确保包含正确的仓库地址配置:
{
  "registry": "https://repo.harmonyos.com/ohpm"
}
  1. 如果使用华为镜像源,建议改用官方仓库地址,因为部分包可能不在镜像中。

  2. 运行ohpm install前,确认网络能正常访问配置的仓库地址。

  3. 对于@ohos/hamock这类官方包,确保:

    • 包名拼写正确
    • 项目配置的SDK版本与包版本兼容
  4. 可尝试清除缓存后重新安装:

ohpm cache clean
ohpm install

注意:华为镜像源(mirrors.tools.huawei.com)可能不包含所有HarmonyOS官方包,推荐优先使用repo.harmonyos.com官方仓库。

回到顶部