Java 防止gradle.properties扩展

Java 防止gradle.properties扩展,java,spring,gradle,application.properties,gradle.properties,Java,Spring,Gradle,Application.properties,Gradle.properties,我是Gradle环境的新手,正在开发一个Spring应用程序,在Application.properties文件中进行属性扩展,比如:server.port=${app\u server\u port} 一切正常,当我使用gradle build命令构建时,gradle获取文件~/.gradle/gradle.properties并将变量展开到构建的应用程序.properties文件中 我的问题是: 你如何防止房地产扩张 gradle build中有任何命令行参数将使其忽略~/.gradle/

我是Gradle环境的新手,正在开发一个Spring应用程序,在
Application.properties
文件中进行属性扩展,比如:
server.port=${app\u server\u port}

一切正常,当我使用
gradle build
命令构建时,gradle获取文件
~/.gradle/gradle.properties
并将变量展开到构建的
应用程序.properties
文件中

我的问题是:

  • 你如何防止房地产扩张
  • gradle build
    中有任何命令行参数将使其忽略
    ~/.gradle/gradle.properties
    并使用原始值生成源代码
  • 有一种类似于“渐变生成”——跳过全局设置的方法

谢谢

您可以这样编写构建脚本:

apply plugin: 'java'

def props = new Properties()
file("local.properties").withInputStream { props.load(it) }

processResources {
  if (project.hasProperty('expand'))
    expand(props)
}
现在,如果您使用
gradlew build-Pexpand构建,那么属性扩展将使用
local.properties
中的值来完成

如果使用
gradlew build
进行构建,则不会进行属性扩展


请注意,我建议不要将特定于项目的属性放入
~/.gradle/gradle.properties
,因为此文件在您机器上构建的所有项目之间共享。

谢谢,它工作起来很有魅力