项目范围的Java属性

时间:2018-07-03 06:55:25

标签: gradle

我正在编写一些多模块Android应用程序(实际上是在Kotlin中),并且我想要一些项目范围的标志。我正在考虑在Gradle中设置这些标志并从我的代码中访问它们。但是我找不到怎么做。有可能吗?

1 个答案:

答案 0 :(得分:0)

您可以在Gradle中生成一个属性文件,该文件将添加到您的运行时类路径中。请将以下groovy / java修改为kotlin / android

ARCHITECTURE="ssd_mobilenet_0.50_${IMAGE_SIZE}"

然后在您的Java代码中

ext {
    someProperty = 'xxx' 
} 
dependencies {
    compile files("$buildDir/generated/resources")
}
task generateResources {
    // configure task inputs/outputs for up-to-date checking/caching 
    inputs.property("someProperty", someProperty) 
    outputs.dir "$buildDir/generated/resources"
    doLast {
         file("$buildDir/generated/resources/myprops.properties").text = "someProperty=$someProperty"
    }
 }
 // important: wire the task into the DAG 
 compileJava.dependsOn generateResources