当我调用这个方法时,它在java中不起作用
当我从Company类调用getNamecompanyName方法时,它不会从yml向用户发送公司的名称,它只是抛出许多异常。但是,当我将getNamecompanyName方法返回的代码放入sender.sendMessage时,它确实会向用户发送公司名称。为什么会这样 将在其中执行方法的类:当我调用这个方法时,它在java中不起作用,java,minecraft,bukkit,Java,Minecraft,Bukkit,当我从Company类调用getNamecompanyName方法时,它不会从yml向用户发送公司的名称,它只是抛出许多异常。但是,当我将getNamecompanyName方法返回的代码放入sender.sendMessage时,它确实会向用户发送公司名称。为什么会这样 将在其中执行方法的类: package me.ben.Corporation.commands; import me.ben.Corporation.Company; import me.ben.Corporation.Co
package me.ben.Corporation.commands;
import me.ben.Corporation.Company;
import me.ben.Corporation.Config;
import me.ben.Corporation.Corporation;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
public class CorporationCommand implements CommandExecutor
{
Config companiesFile = Corporation.plugin.companiesFile;
Company company;
public boolean onCommand(CommandSender sender, Command cmd, String cmdLabel, String[] args)
{
companiesFile.reload();
if (cmdLabel.equalsIgnoreCase("corporation"))
{
if (args[0].equalsIgnoreCase("test"))
{
sender.sendMessage(company.getName(args[1]));
}
}
return false;
}
}
方法getNamecompanyName所在的类:
package me.ben.Corporation;
public class Company
{
Config companiesFile = Corporation.plugin.companiesFile;
public String getName(String companyName)
{
companiesFile.reload();
return companiesFile.getConfig().getString("companies." + companyName.toLowerCase() + ".name");
}
}
插件读取和写入的YAML文件:
companies:
simpleco:
assets:
cash: {}
property: {}
directors: {}
expenses: {}
liabilities: {}
name: SimpleCo
revenue: {}
将getName方法设置为静态。无效意味着?你能告诉我整个方法的位置吗?我猜你的范围有问题。另外,您遇到的实际问题是什么?不仅如此work@MageXy我能把整个班级都写进去吗?有错误吗?你调试了吗?看在上帝的份上,有什么异常?如果它使用一个可能的实例变量companiesFile,它怎么可能是静态的?