0x00
基于兴趣爱好驱动的自学 java
开发,我选择尝试开发 minecraft
插件的方式来练级;
在第一个礼拜的努力下,我尝试自己开发一个 BungeeCord
插件 BCfallback
来解决我自己的Minecraft
服务器上所遇到的一个功能需求;
目前插件的核心功能已经都完全实现并已在我自己的服务器上运行良好,但我不满足于插件只解决这一个简单的需求,想在此基础上扩展更加丰富的功能,因此就涉及需要使用插件自己独立的配置文件来管理可自定义的配置参数选项;
我知道在 Bukkit
和 Spigot
中有现成的工具类和方法可以直接使用,但在 BungeeCord
上,完全找不到相同的类和方法,最后还是在sgopitmc
的论坛上找到了相关资料;
0x01
对于在BungeeCord
中要是用独立的配置目录和配置文件,实现方式如下代码,原理没什么好说的,处理思路一看就懂了!
if (!plugin.getDataFolder().exists()) plugin.getDataFolder().mkdir();
File file = new File(plugin.getDataFolder(), path);
try {
if (!file.exists())
Files.copy(plugin.getResourceAsStream(path), file.toPath());
config = ConfigurationProvider.getProvider(YamlConfiguration.class).load(file);
} catch (IOException e) {
e.printStackTrace();
}
BungeeCord 配置管理API 使用参考
BungeeCord's configuration API
0xEND
编程有时候缺的就是一点思路和灵感,当自己被困住的时候只需要有人给个提示就能自己突破重围,