gpt4 book ai didi

java - Commons-configuration 和 DefaultConfigurationBuilder 不会自动重新加载

转载 作者:太空宇宙 更新时间:2023-11-04 07:51:20 25 4
gpt4 key购买 nike

我有一个 DefaultConfigurationBuilder(来自 commons-configuration v1.9)。该对象(名为 config)由这个非常简单的文件初始化:

<?xml version="1.0" encoding="UTF-8" ?>

<configuration>
<system/>
<properties fileName="webapp-commons.properties" throwExceptionOnMissing="true">
<reloadingStrategy refreshDelay="1000" config-class="org.apache.commons.configuration.reloading.FileChangedReloadingStrategy"/>
</properties>

因此,对 webapp-commons.properties 文件的修改必须强制重新加载该文件。但这并没有按预期工作。这是我的小测试:

 log.debug("Go pour modifier le fichier !");
for (int i=0; i < 10 ; i++) {
System.out.println("-- value : "+config.getString("clouderial.business.application.name"));
Thread.sleep(3000);
}
log.debug("Vous auriez du modifier le fichier");

值“clouderial.business.application.name”永远不会改变。

任何帮助将不胜感激。

JM。

最佳答案

解决方案很简单:只需在配置文件中添加一个 header 即可:

<header>
<result forceReloadCheck="true"/>
</header>

并且它有效。

完整的配置文件现在是:

<?xml version="1.0" encoding="UTF-8" ?>

<configuration>
<header>
<result forceReloadCheck="true"/>
</header>
<system/>
<properties fileName="webapp-commons.properties" throwExceptionOnMissing="true">
<reloadingStrategy refreshDelay="1000" config-class="org.apache.commons.configuration.reloading.FileChangedReloadingStrategy"/>
</properties>
</configuration>

关于java - Commons-configuration 和 DefaultConfigurationBuilder 不会自动重新加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14420581/

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