java - 如何阻止我的配置覆盖新值?
问题描述
所以我对 Bukkit API 有点陌生,所以请不要对我太苛刻,除此之外,我一直在制作一个插件,我希望管理员能够自定义配置,但我已经遇到一个问题,无论我做什么,它都会用默认值替换有人尝试输入配置的新值。
所以这是我在代码本身的默认配置中设置的列表:
PersonalBoosterTypes:
- 5#60
- 2#60
- 3#60
- 5#45
- 2#180
- 3#120
- 2#90
现在,如果我在插件配置中添加一个新值,而不是像这样在代码中:
PersonalBoosterTypes:
- 5#60
- 2#60
- 3#60
- 5#45
- 2#180
- 3#120
- 2#90
- 3#180 // new value
之后我重新加载服务器,它会删除该值并保留默认值。我已将此方法放在我的 onEnable 中:
private void loadConfig() {
this.getConfig().options().copyDefaults(true);
this.saveConfig();
}
是否有其他方法可以在不覆盖的情况下加载默认值,或者我是否必须使用 addDefault() 手动添加每个默认值?
请帮忙!干杯,丹尼尔
解决方案
经过一番研究,我实际上自己找到了解决方案,而且非常简单,我所要做的就是在我的 onDisable 方法中,我只需要添加这两行:
this.reloadConfig();
this.saveConfig();
起初我很惊讶,但它很有魅力,希望这可以帮助其他人找到解决问题的方法
推荐阅读
- gitlab - 安装 gitlab-runner 失败:初始化已经存在
- elixir - 在风景中显示非英文文本
- android - MPAndroidChart - 饼图 - 自定义标签线
- r - 如何定义管道运算符?
- pyspark - pyspark 数据框中的平均函数
- java - 如何将数据从 FireBase 检索到我的适配器而不是关键
- javascript - 如何使用 http(s) 模块在 Node.js 的请求中发送文件?
- javascript - 在类中创建一个元素,该元素是使用 javascript *no jquery 包含的 html 的一部分
- python - 无法让我的脚本使用发布请求填充结果
- pyqt5 - 如何从 QGraphicsView 方法修改位于 QMainWindow 上的 QtableWidget?