从Gradle重用资源

时间:2019-06-28 18:31:58

标签: java gradle

全部

可以说我有一个gradle的JAVA项目。 在buidl.gradle文件中,我具有如下定义的属性:

packageName = "svc.pvtbroker" //name of the package

有没有简单的方法可以在Java源代码中使用此“ packageName”?

TIA !!

2 个答案:

答案 0 :(得分:0)

在.app gradle内部,像这样声明您的财产:

UInt64

然后以这种方式在Java源代码中导入属性:

UITextView

建议 我也在gradle.properties

中声明了我的密钥
    defaultConfig {
        ...
        buildConfigField("String", "API_KEY", "123456789")
    }

通过这种方式,您可以像这样使用BuildConfigField:

import static yourpackage.BuildConfig.API_KEY;

希望有帮助。

答案 1 :(得分:0)

您可以生成Java文件或资源,并将生成的文件夹添加到资源或已编译的源中。

例如:假设我们希望packageName在运行时可以通过静态方法使用

task generateJava {
   // set inputs/outputs for up to date checks 
   inputs.property('packageName', project.property('packageName')) 
   outputs.dir "$buildDir/generated/java" 
   doLast {
      File f = file("$buildDir/generated/java/GradleProperties.java"
      f.parentFile.mkdirs()
      f.text = 
"""
public class GradleProperties {
   public static String getPackageName() {
      return \"${packageName}\";
   } 
}
"""
   } 
} 
// add the dir to the java sources 
sourceSets.main.java.srcDir "$buildDir/generated/java" 
// wire the task into the DAG
compileJava.dependsOn generateJava