我需要实现一个配置文件,应该定期重新扫描或在编辑后重新扫描,我该怎么办?
我试过
config = new ConfigSlurper().parse(Config);
在Config.groovy
动态更改时无效。
示例(来自下面的评论)
class MyConfig {
public static ConfigObject config
public static void run() {
config = new ConfigSlurper().parse(Config)
}
public static void printconfig() {
println config.options.video.enable
}
}
MyConfig.run()
for( int i = 0 ; i < 10 ; i++ ) {
Thread.sleep(3000)
MyConfig.printconfig()
}
options { video { enable = false } }
答案 0 :(得分:2)
您似乎解析了配置文件一次,然后再也没有重新解析它......
您可以执行的操作是存储文件的上次修改日期,如果检测到文件已被修改,则再次从run()
致电printConfig
...
另外,我假设你有一个复制/粘贴错误......不应该:
config = new ConfigSlurper().parse(Config)
是:
config = new ConfigSlurper().parse( MyConfig.class.getResource( 'Config.groovy' ) )
还是什么?