首页 > 编程笔记 > 通用技能 阅读:3

鸿蒙ohpm包管理工具的用法(非常详细)

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

ohpm 支持在 Windows、macOS、Linux 操作系统下使用。ohpm 通过软链接或符号链接的方式构建依赖关系。不同操作系统需满足如下要求:

ohpm常用命令

ohpm config 常用命令有以下 10 个。

1) ohpm config

ohpm config 用于设置 ohpm 用户级配置项。命令格式如下:
ohpm config set <key> <value>
ohpm config get <key>
ohpm config delete <key>
ohpm config list
配置文件中信息以键-值对(Key-Value Pair)形式存在。

ohpm 从命令行和 .ohpmrc 文件中获取其配置设置。ohpm config 仅支持配置项字段,且仅支持修改用户级目录下的 .ohpmrc 文件。
① set:
ohpm config set <key> <value>
在用户级目录下的.ohpmrc文件中,以键-值对形式写入数据。

② get:
ohpm config get <key>
对从命令行、项目级 .ohpmrc 文件、用户级 .ohpmrc 文件(优先级依次递减)中获取的值进行标准输出。如果未提供键值,则此命令的执行效果与命令 ohpm config list 相同。

③ list:
ohpm config listalias: ls
显示所有配置项。

④ delete:
ohpm config delete <key>
删除用户级目录下 .ohpmrc 文件中指定的键值。

2) ohpm help

获取有关 ohpm 的帮助。命令格式如下:
ohpm help [command]
ohpm [command] -help
alias: -h
参数 command 用于指定命令名称。

如果提供了命令名称,则显示相应命令的帮助信息。如果提供的命令名称不存在或未提供,则显示所有命令的概要信息。

3) ohpm info

查询指定第三方库的具体信息。命令格式如下:
ohpm info [options] [<@group>/]<pkg>[@<version> | @tag:<tag>]
说明如下:
ohpm info 可以调用云端查询接口,查看指定包的详细信息,并将结果输出。

例如,执行以下命令:
ohpm info @ohos/lottie --registry https://ohpm.openharmony.cn/ohpm

4) ohpm install

ohpm install 用于安装第三方库,命令格式如下:
ohpm install [options] [[<@group>/]<pkg>[@<version> | @tag:<tag>]] ...
ohpm install [options] <folder>
ohpm install [options] <har file>
alias: i
说明如下:
ohpm info 可以安装指定组件或 oh-package.json5 文件中的所有依赖。如果存在 oh-package-lock.json5 文件,那么安装将取决于 oh-package-lock.json5 文件中锁定的版本。

ohpm install 将依赖项安装到本地 oh_modules 文件夹中,并将所有依赖项作为 dependencies 写入 oh-package.json5 文件。

ohpm install <folder> 将安装本地文件夹,则默认会创建一个软链接指向该文件夹。示例如下:
ohpm install ../folder

ohpm install <harfile> 用于安装压缩包,请注意压缩包的要求:
示例如下:
ohpm install ./package.har

5) ohpm list

ohpm list 用于罗列已安装的第三方库。命令格式如下:
ohpm list [options] [[<@group>/]<pkg>[@<version>]]
alias: ls
说明如下:
ohpm list 将以树形结构列出当前项目安装的所有第三方库信息,以及它们的依赖关系。

当指定第三方库名称时,会列出指定第三方库名称的所有父依赖;当未指定第三方库名称时,默认只列出所有的直接依赖,可通过添加选项 depth 来指定要打印的依赖层级。

6) ohpm uninstall

ohpm uninstall 用于卸载第三方库。命令格式如下:
ohpm uninstall [options] [<@group>/]<pkg> ...
alias: un
说明如下:
ohpm uninstall 可以卸载指定已安装的模块,并从 oh-package.json5 文件中的 dependencies 和 devDependencies 属性里移除指定第三方库信息;若没有指定第三方库,则不执行任何操作。如果无须在 oh-package.json5 文件中的 dependencies 和 devDependencies 属性里移除指定第三方库信息,则可配置 --no-save 参数。

例如,从当前工程下卸载直接依赖的某个 package。执行以下命令:
ohpm uninstall lottie
说明如下:

7) ohpm version

ohpm version 用于管理模块版本。命令格式如下:
ohpm version [options] [<newversion> | major | minor | patch]
在模块目录中运行 ohpm version 命令,以获取或升级版本号,并将数据回写至 oh-package.json5 中。

8) ohpm cache clean

ohpm cache clean 可以清理 ohpm 缓存文件夹。命令格式如下:
ohpm cache clean
ohpm cache clean 命令可以清理 ohpm 缓存文件夹。

ohpm 将缓存数据存储在配置的 cache 目录下名为 content-v1 的文件夹中,存储所有通过 HTTP 请求获取的 HAR 包数据。包的路径使用包的 sha512 哈希值分割成 3 段,哈希值第 1、2 位作为第一级目录,哈希值第 3、4 位作为第二级目录,哈希值第 5 位到结尾的所有字符作为文件名。使用哈希值可以将文件较均匀地分布在各个目录下,分成 3 层目录结构可以避免一个目录下文件数量过多,从而提升文件索引效率。

9) ohpm --version

查询 ohpm cli 安装版本,也可以使用 ohpm -v。命令格式如下:
ohpm -v | --version
说明如下:
例如,查询 ohpm cli 安装版本,可执行以下命令:
ohpm --version
结果示例如下图所示:


图 1 查询ohpm cli安装版本

10) ohpm clean

ohpm clean 用于清理工程下所有模块的 ohpm 安装产物。命令格式如下:
ohpm clean|cls
ohpm clean 可以清理工程下所有模块的 oh_modules 目录、oh-package-lock.json5 文件和 oh-package-targetName-lock.json5 文件(指定选项 --target_path 安装时生成)。清理完成后,会在控制台打印耗时信息。

相关文章