build、out 目录会存放缓存、class文件等。使用 Intellij IDEA 编写代码时,有时会遇到缓存、class文件内容和实际代码不一样的情况,会发生一些很诡异的事情,比如运行结果不符合预期、运行报错等。
这个不一样可能是:
- 代码中挪动类的位置了,缓存中没挪。
- 代码中某个资源文件更新了,但是缓存中没更新。
- 等等
解决办法是删除这些目录。手动删,或者写个 gradle task 删除:
task cleanBuildDir(type: Delete) {
delete "${projectDir}/build"
delete "${projectDir}/out"
}
如果一个项目中有多个子项目,那么会有很多 build、out 目录, 可以这样写 task :
allprojects {
task cleanBuildDir(type: Delete) {
delete "${projectDir}/build"
delete "${projectDir}/out"
}
}
执行顶层项目的 cleanBuildDir 任务即可。