gpt4 book ai didi

gradle - 从JOOQ Code Gen Config xml中的属性文件读取值

转载 作者:行者123 更新时间:2023-12-03 03:22:17 25 4
gpt4 key购买 nike

是否可以从代码生成器xml配置文件中的属性文件(例如数据库属性文件)中读取值?
例如,我将所有数据库属性存储在一个单独的文件中,例如:
db.properties

local.datasource.url=jdbc:mysql://localhost:3307
local.datasource.username=testuser
local.datasource.password=testpassword
local.datasource.driver-class-name=com.mysql.jdbc.Driver
我的应用程序正在使用上述连接信息来访问数据库。
我希望我的jooqCodeGen.xml看起来像这样:
jooqCodeGen.xml
   <jdbc>
<driver>${local.datasource.driver-class-name}</driver>
<url>${local.datasource.url}</url>
<user>${local.datasource.username}</user>
<password>${local.datasource.password}</password>
</jdbc>
...
因此,我不必重复这些属性。
我正在从build.gradle触发JOOQ代码生成工具
Build.gradle
task generateJooqDatabaseSource(type: JavaExec) {
classpath = sourceSets.main.runtimeClasspath
main = 'org.jooq.util.GenerationTool'
args = ['/jooqCodeGen.xml']
standardOutput = System.out
errorOutput = System.err
}
有没有办法可以做到这一点?

最佳答案

您可以像在手册中一样在gradle构建期间生成XML

http://www.jooq.org/doc/3.7/manual/code-generation/codegen-gradle/

(很长,所以我不会在这里重复)

然后,您所需要做的就是加载db.properties,以便该属性可用于gradle构建,例如(来自https://discuss.gradle.org/t/how-to-include-an-external-properties-file/4263/2)

ext.dbProps = new Properties()
dbProps.load(file("db.properties"))

然后,您可以访问属性:
println dbProps['local.datasource.url']

关于gradle - 从JOOQ Code Gen Config xml中的属性文件读取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32624368/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com