【问题标题】:Intellij + Gradle: properties fileIntellij + Gradle:属性文件
【发布时间】:2014-09-13 21:20:35
【问题描述】:

我的配置:

通过 Homebrew (Mac OS)、Intellij Idea 13 安装 Gradle。

偏好:

"使用默认的 Gradle 包装器" 和毕业回家:/Users/my_username/.gradle


对于以下项目:

/
 build.gradle
 gradle.properties

gradle.properties 文件包含一个变量NAME = PJ。 我在/Users/my_username/.gradle/gradle.properties 下也有一个gradle.properties,它有一个变量TEST=Hello

对于给定的任务,gradle 打印 Hello 和 null

task hello << {
    println TEST
    println NAME
}

这意味着它默认不读取同一目录下的 gradle.properties。这是正常行为还是我错过了路径变量中的某些内容,以便 build.gradle 脚本可以读取它?

我发现的解决方法是添加:

file("gradle.properties").withInputStream {
    stream -> new Properties().load(stream)
}

当我使用 android studio 时,自动导入了相同目录的 .properties 文件。

PS:虽然 TEST var 被打印出来,但我收到了Cannot resolve symbol 的警告。我环顾四周,这是典型的错误 (?)。

【问题讨论】:

    标签: java intellij-idea gradle


    【解决方案1】:

    使用 gradle 2.0 可以正常工作:

    $HOME/.gradle/gradle.properties

    TEST=Hello
    

    gradle.properties

    NAME = PJ
    

    build.gradle

    task hello << {
        println TEST
        println NAME
    }
    

    gradle hello 运行时,我得到以下输出:

    :hello
    Hello
    PJ
    
    BUILD SUCCESSFUL
    
    Total time: 2.992 secs
    

    【讨论】:

      【解决方案2】:

      使用 intelliJ 13.1.4 内置 Gradle 1.7 测试并下载 Gradle 2.0 和 2.1 版本 工作正常。确保路径 HOME/.gradle/ 设置正确

      gradle.properties:

      TEST=Hello
      NAME=PJ
      

      【讨论】:

        猜你喜欢
        • 2018-04-15
        • 2018-11-27
        • 2015-06-19
        • 1970-01-01
        • 1970-01-01
        • 2015-04-06
        • 2017-01-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多