如何从Gradle命令行设置每个子项目属性?

时间:2013-10-14 21:04:08

标签: gradle

我有以下内容:

// File: build.gradle
subprojects {
    test {
        final testRatioOfWaitTimeToComputeTime = System.getProperty('test.ratio-of-wait-time-to-compute-time', '1') as int
        final testMaxParallelForks = (System.getProperty('test.max-parallel-forks') as Integer) ?: numberOfForks(testRatioOfWaitTimeToComputeTime)

        maxParallelForks testMaxParallelForks
    }
}

我将如何:

  • 一个特定子项目指定test.ratio-of-wait-time-to-compute-timetest.max-parallel-forks的默认值?
  • 一个特定子项目指定test.ratio-of-wait-time-to-compute-timetest.max-parallel-forks的命令行覆盖?

我尝试了-P-D的各种组合,其中包含和不使用子项目名称为该属性添加前缀(例如:sub-project:test.ratio-of-wait-time-to-compute-time)。

1 个答案:

答案 0 :(得分:1)

系统属性是JVM范围的,因此您无法为特定子项目设置系统属性。您必须使用单独的系统属性(例如,以子项目命名)。项目属性也是如此。

PS:我不明白/质疑它的实用性。