我在项目内的一个目录中有多个语言文件。这些语言文件基本上是自定义配置文件,我也希望将其保存在我的插件文件夹的子文件夹中。
我已经编辑了pom.xml
以将.yml
文件实现为压缩的.jar
<resource>
<directory>${basedir}/src/main/resources/languages</directory>
<includes>
<include>*.yml</include>
</includes>
</resource>
到目前为止,此方法正常工作,但是当我保存配置文件时,
File file = new File(Main.getPlugin().getDataFolder(),
ConfigManager.getConf().getString("Settings.language") + "_lang.yml");
if (!file.exists()) {
System.out.println("This language file does not exist!");
file.getParentFile().mkdirs();
}
Main.getPlugin().saveResource(file.getName(), true);
conf = YamlConfiguration.loadConfiguration(file);
当插件加载时,它们不会保存在子文件夹中。
我试图告诉File()
函数,它应该使用其他位置,例如
File file = new File(Main.getPlugin().getDataFolder() + System.getProperty("file.separator") + "languages",
ConfigManager.getConf().getString("Settings.language") + "_lang.yml");
但是没有用。
我可以使用当前的方式,不会将语言文件保存在子文件夹中,但是随着时间的推移和更多的lang文件,如果文件太多,它将变得非常混乱。 >
[如果我使用的这种方法是“愚蠢的方法”,那很好,如果其他人可以告诉我一种如何编写更好的“语言切换器”的方法。
我在项目内的一个目录中有多个语言文件。这些语言文件基本上是自定义配置文件,我也希望将其保存在插件文件夹的子文件夹中。我有...
好吧,我发现自己找到了解决方法。