我正在阅读关于gradle的文档,我正在研究当我发现它时可能导致的问题。 7.5.5. What can go wrong with Daemon?
这句话最重要的是:
还可以通过运行不能正确释放资源的构建来破坏守护程序(以及一般的构建环境)的稳定性。在使用Microsoft Windows时,这是一个特别尖锐的问题,因为它对读取或写入后无法关闭文件的程序不太宽容。
然后我看到By default, the build cache is not enabled.与以下陈述非常矛盾:
守护进程是一个长期存在的过程,因此我们不仅能够避免每次构建的JVM启动成本,而且还能够在内存中缓存有关项目结构,文件,任务等的信息。 / p>
在此处找到:7.1. Why the Gradle Daemon is important for performance
我后来运行gradle build --scan
并确认缓存实际上已被禁用。事实上,唯一启用的deamon开关是deamon。
据我所知,gradle作为构建工具更快的原因是它能够缓存先前的构建,但是默认情况下它被禁用,因此它在构建性能方面就像mvn clean install -DskipTests
一样除非启用了缓存。
答案 0 :(得分:1)
你的引言:
守护进程是一个长期存在的过程,因此我们不仅能够避免每次构建的JVM启动成本,而且还能够在内存中缓存有关项目结构,文件,任务等的信息。 / p>
几乎可以回答你的问题。这是在讨论元数据,而不是实际构建的文件内容的缓存。在重复构建项目以测试小变化时,它仍然有助于提高速度。