我希望能使用外部属性文件来控制Gradle构建脚本中的“全局”配置,每个构建机器(dev、ci、uat等)都有自己的属性文件,并使用命令行参数指定文件名。
例如:gradle -DbuildProperties=/example/config/build.properties
我不想使用gradle.properties,因为我们已经有现有项目使用了这种方法,而且我们希望能够修改数据库URL和JDBC驱动程序而不必更改每个项目。
到目前为止,我们尝试过:-
Properties props = new Properties()
props.load(new FileInputStream("$filename"))
project.setProperty('props', props)
这段代码可以运行,但是会出现过时警告,我不知道如何避免这种情况。
也尝试使用ConfigSlurper中的Groovy风格配置文件:
environments {
dev {
db.security {
driver=net.sourceforge.jtds.jdbc.Driver
url=jdbc:someserver://somehost:1234/some_db
username=userId
password=secret
}
}
}
但是冒号和斜杠会引起异常,我们不想用转义字符来破坏配置。
一定有一种非弃用的方法可以解决这个问题 - 有人能建议一下应该采用哪种“正确”的方法吗?
谢谢。
url="jdbc:someserver://somehost:1234/some_db"
吗? - tim_yates