一旦您知道如何使用配置文件来获取引用变量,就很容易做到。从这里开始,您实际上需要config.yml
在src
项目的文件夹中有一个。如果您不在 Eclipse 中,我建议您切换到它以更轻松地执行此操作。只需创建一个名为 config.yml 的文件。你可以把你的变量放在这里,我看到你已经做过了。
在此之后,您需要在服务器启动时创建配置文件。
您需要从主类调用 onEnabled 方法的方法。您也可以从其他类中提取该getConfig()
方法,我将在下面向您展示。
由于每次控制台启用它都会执行此方法,您将需要一个try/catch
操作:
try
{
}
catch (Exception e)
{
e.printStackTrace();
}
问题是,如果出现问题,它会将 stackTrace 打印到控制台。在里面try
你将创建config.yml
. 为此,您需要在以下文件中创建一个文件变量try
:
File config = new File(getDataFolder(), "config.yml");
在进行配置之前,必须有一个数据文件夹用于存储配置。要创建此数据文件夹,您需要首先查看它是否存在:
if(!getDataFolder().exists())
{
getDataFolder().mkdirs();
}
创建数据文件夹后,您需要检查 config.yml 是否已经存在,如果没有则创建它。
if(!config.exists())
{
getLogger().info("Config.yml not found, Creating");
saveDefaultConfig();
}
拥有该saveDefaultConfig();
方法将确保将您保存#notes
在配置文件中,以告诉用户每个变量的作用。这是在创建配置文件时保存配置文件的最佳方式。如果配置已经存在,您可以放置一个 else 并说它已经存在,但这不是必需的。
onEnable()
确保所有这些都在您的主类的方法中调用的方法中。现在您的配置已创建,您可以使用该方法轻松地从主类中获取变量getConfig()
您也可以从其他课程中执行此操作,我将很快告诉您如何操作。你可以通过做和过去从配置中获取任何变量,getConfig().get ...
你可以得到很多东西,比如strings, integers, booleans, etc...
它会给你一个字符串来从中找到变量。这将是配置中的变量名称。
要使用getConfig()
其他类的方法,您需要使用构造函数。您需要从主类调用一个实例来执行此操作。在你的其他类中创建一个这样的构造函数:
[MainClassName] plugin;
public [OtherClassName]([MainClassName] instance)
{
plugin = instance;
}
该plugin
变量将是您在主类中的实例。您现在可以使用plugin.getConfig()
获取配置。
但是,当您注册事件/命令时,您将需要匹配此构造函数。只需this
在注册事件/命令时匹配构造函数。
我还注意到变量中有变量。要获取变量内部的变量,您需要获取一个配置部分:
for(String key : instance#getConfig().getConfigurationSection([config path]).getKeys(false))
String键将是变量内部的变量。由于这是迭代,它将使用一个 string 获取变量内部的所有变量key
。要获取key
变量的值,您只需创建一个 boolean/int/string 或内部的任何内容,然后通过执行以下操作来获取它:
[String/boolean/int/etc...] value = instance#getConfig().get[Int/String/Boolean/etc...]([first config path]+"."+key)
这就是您需要了解的有关配置文件的全部内容。