首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未为任务启用Gradle构建缓存

未为任务启用Gradle构建缓存
EN

Stack Overflow用户
提问于 2018-05-24 20:09:12
回答 2查看 11.1K关注 0票数 11

我已经为我的项目启用了gradle构建缓存。但是,我们使用了一些非内置的任务,比如npm-install from third party plugins。Gradle没有为这些任务启用缓存。例如,当执行这样的任务时,它会显示类似下面的内容:

代码语言:javascript
复制
Task :data-export-ui-kjs:npm-configure
Build cache key for task ':data-export-ui-kjs:npm-configure' is bbe0dafcd467a2afb2834acafe2993f5
Caching disabled for task ':data-export-ui-kjs:npm-configure': Caching has not been enabled for the task

有没有办法为这样的非内置任务启用构建缓存?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-05-28 15:21:15

任务需要选择是可缓存的(参见Cacheable tasks),因为并不是每个任务都是可缓存的。

可以通过使用@CacheableTasktask.outputs.cacheIf { true }注释任务来选择加入,因此您可以对npm配置任务执行此操作。

请注意,可缓存的任务需要declare their inputs and outputs correctly。如果不这样做,那么您可能会遇到无效的构建失败。

票数 8
EN

Stack Overflow用户

发布于 2018-05-24 22:49:00

Gradle documentation说:

有一些第三方插件可以很好地与构建缓存配合使用。最突出的例子是Android插件3.1+和Kotlin插件1.2.21+。对于其他第三方插件,请查看它们的文档,以确定它们是否支持构建缓存。

所以它依赖于提供任务npm-configure的插件。

根据their changelog的说法,如果你正在使用SRS的gradle-node-plugin,它应该可以从1.2.0版本开始工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50509068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档