哪个文件 gradle.properties 的优先级更高?

Jac*_*k J 9 gradle android-gradle-plugin gradle.properties

我有本地和全局 gradle.properties,需要全局一个来配置代理,但它也包含其他参数,想知道如果为相同的设置指定不同的值会发生什么,哪些文件将具有优先级,或者可能是它们它们是如何合并的?

我的全球 gradle.properties

systemProp.http.proxyHost=hostname
systemProp.http.proxyPort=8080
systemProp.http.proxyPassword=password

org.gradle.parallel=false
Run Code Online (Sandbox Code Playgroud)

我本地的 gradle.properties

android.useDeprecatedNdk=true
org.gradle.daemon=true
org.gradle.parallel=true
org.gradle.jvmargs=-Xmx4096M
Run Code Online (Sandbox Code Playgroud)

例如,org.gradle.parallel将使用哪个?

Jag*_*567 10

根据Gradle 属性gradle.properties文件按以下顺序应用:

  1. gradle.properties 在项目根目录中。
  2. gradle.propertiesGRADLE_USER_HOME目录中。
  3. 系统属性,例如何时-Dgradle.user.home在命令行上设置。

因为 inGRADLE_USER_HOME中的属性是在项目根中的属性之后应用的,所以它们会覆盖项目中定义的属性。假设 global 是指GRADLE_USER_HOME目录中的一个,而 local 是项目根目录中的一个,那么您的值org.gradle.parallel将是false.

  • 请务必阅读帖子上共享的链接,演示顺序不同,并且有一个新项目 (3认同)
  • 很好的解释。就我个人而言,我并不完全同意项目的本地 gradle.properties 文件和全局 gradle.properties 文件之间的顺序。我认为由项目的本地参数来重写全局参数会更有意义...... (2认同)