Skip to content

隐藏配置黑科技

gradle.properties 文件的潜力远超你的想象。除了常见的加速开关,还有许多高级配置能显著提升开发体验。

1. 自动调整 JVM 堆大小 (精细化控制)

内存建议

如果你的项目模块超过 100 个,默认的内存分配通常是不够的。

properties
# 增加元空间,防止编译大项目时溢出
org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g -XX:+HeapDumpOnOutOfMemoryError

2. 并行编译的颗粒度

properties
# 强制 Gradle 即使在无法完全确定安全的情况下也尝试并行执行
# 适用于多 CPU 核心且模块极多的机器
org.gradle.parallel=true

3. 依赖分发模式 (VFS)

properties
# 启用虚拟文件系统 (Virtual File System) 监视
# Gradle 会持续监听文件变化,显著提升二次编译的初始化速度
org.gradle.vfs.watch=true

4. 消除警告与控制台输出

简洁输出

如果你觉得控制台日志太吵,可以控制其显示。

properties
# 隐藏不推荐使用的功能警告 (适用于强迫症)
org.gradle.warning.mode=none

# 配置控制台显示颜色与进度条
org.gradle.console=rich

5. 项目属性的快捷传递

你可以直接在 gradle.properties 里定义一些全局常量,然后在任何子模块中直接访问,无需手动解析。

properties
# 定义全局常量
app_version_name=1.0.5
enable_leak_canary=true
kotlin
// 在 Kotlin DSL 中可以直接通过委托访问
val app_version_name: String by project
val enable_leak_canary: String by project

android {
    defaultConfig {
        versionName = app_version_name
    }
}