在大型应用开发和多团队协作场景中,编译效率是制约开发体验的关键因素:
针对该问题,Hvigor提供缓存增强插件@ohos/hvigor-cache-booster,采用多级缓存查找机制,按“当前编译模块build目录 -> 本地缓存 -> 远程缓存”的优先级查找编译缓存,显著提升首次编译效率。
@ohos:registry=https://repo.harmonyos.com/npm/
"dependencies": {
"@ohos/hvigor-cache-booster": "7.0.0"
}, 在模块的hvigorfile.ts中添加示例代码,按需修改配置后即可使用缓存增强插件,详细使用指导请参考@ohos/hvigor-cache-booster插件的README.md文件。
如需启用远程缓存,服务端需按规范实现相应API并提供服务,请参考插件README.md文档了解服务端API的规格要求。
// entry/hvigorfile.ts
import { hapTasks } from '@ohos/hvigor-ohos-plugin';
import { CacheBooster } from '@ohos/hvigor-cache-booster';
import { arkCacheChainFactory, ArkCacheChainConfig, ChainType } from '@ohos/hvigor-cache-booster';
// 缓存插件配置,可配置本地缓存和远程缓存
const arkChainCfg: ArkCacheChainConfig = {
local: { enable: true, pushEnable: true, minPushIntervalHours: 0 },
remote: { enable: true, pushEnable: true }
};
// 缓存链类型,可以为DEFAULT和OHOS_TEST,DEFAULT表示源代码目录,OHOS_TEST表示测试目录
const chain0 = arkCacheChainFactory.createArkCacheChain(ChainType.DEFAULT, arkChainCfg);
const chain1 = arkCacheChainFactory.createArkCacheChain(ChainType.OHOS_TEST, arkChainCfg);
export default {
system: hapTasks,
plugins: [new CacheBooster({
enable: true,
remoteUrl: 'https://...', // 远程缓存url,如果启用远程缓存,根据实际环境修改
strictSSL: false,
cacheManagerChains: [chain0, chain1]
})]
}