从OHPM 5.0.0版本开始,支持区分工程级与模块级oh-package.json5配置。其中:
- 工程级oh-package.json5文件:位于工程根目录下,主要用来描述全局配置,如:依赖覆盖(overrides)、依赖关系重写(overrideDependencyMap)和参数化配置(parameterFile)等,详情请见:工程级oh-package.json5 字段。
- 模块级oh-package.json5文件:位于工程各个模块的根目录下,用来描述包名、版本、入口文件(类型声明文件)和依赖项等信息,详情请见:模块级oh-package.json5 字段。
开发者可将标准的DevEco Studio工程下的各个模块打成HAR包后,发布到OpenHarmony三方库中心仓;所有发布到仓库的包必须包含模块级oh-package.json5文件,以描述当前包基本信息。
工程级oh-package.json5 字段
配置项 |
字段名称 |
字段说明 |
字段要求 |
字段类型 |
默认值 |
备注 |
---|---|---|---|---|---|---|
开发态版本 |
modelVersion |
开发态版本号 |
必选 |
字符串 |
无 |
开发态版本号。 |
描述配置 |
description |
简介 |
可选 |
字符串 |
无 |
用于描述工程信息的字符串。 |
依赖配置 |
dependencies |
生产依赖 |
可选 |
对象 |
{} |
用于配置参与编译/运行阶段使用的依赖,声明需要在代码中import的三方库(推荐在模块级oh-package.json5中配置生产依赖)。 |
devDependencies |
开发依赖 |
可选 |
对象 |
{} |
配置开发态依赖,配置只能参与项目的开发或测试阶段的依赖。如果被依赖的组件最终要与依赖的组件一起发布到目标机器(如手机)上使用,则不能在其中配置。 |
|
dynamicDependencies |
动态依赖 |
可选 |
对象 |
{} |
配置项目动态依赖的HSP模块。在开发者需要动态加载HSP的时候配置使用(不推荐在工程级配置)。 |
|
overrides |
依赖覆盖配置 |
可选 |
对象 |
{} |
支持将依赖树中的包替换为另一个指定版本,详情见overrides。 |
|
overrideDependencyMap |
重写依赖关系 |
可选 |
对象 |
{} |
支持将依赖树中包的子依赖替换为配置文件中配置的依赖,详情见overrideDependencyMap。 |
|
其他 |
scripts |
自定义脚本 |
可选 |
对象 |
{} |
维护一个脚本别名到脚本内容的映射表,开发者可以通过ohpm run <脚本别名>来触发对应脚本内容的执行。 |
hooks |
钩子 |
可选 |
对象 |
{} |
安装或卸载的钩子设置,包含 "preInstall", "postInstall", "preUninstall", "postUninstall","preVersion", "postVersion", "prePublish", "postPublish" 字段。仅支持执行当前工程中的 hooks,不支持执行依赖中的 hooks。 |
|
parameterFile |
参数化配置文件路径 |
可选 |
字符串 |
无 |
标识是否开启参数化。未配置:关闭参数化;已配置:开启参数化。需同时指定参数化配置文件路径,详见parameterFile。 |
模块级oh-package.json5字段说明
配置项 |
字段名称 |
字段说明 |
字段要求 |
字段类型 |
默认值 |
备注 |
---|---|---|---|---|---|---|
描述配置 |