我的错误日志在第13行说明(在我的MainClass中)有一个NPE。
My MainClass:
package me.p250;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.plugin.java.JavaPlugin;
import me.p250.command.BuyCommand;
public class MainClass extends JavaPlugin {
public FileConfiguration config;
public void onEnable() {
getCommand("a").setExecutor(new BuyCommand(this));
}
public void onDisable() {
}
}
还有我的其他课程: http://pastebin.com/bYpCnPN2
答案 0 :(得分:3)
正如其他人已经说过的,你得到一个NPE,因为命令“a”不存在。如果您还没有这样做,也可以将它添加到.yml文件中。
commands:
a:
description: does something
usage: /a
编辑:显然你还没有将它添加到你的onCommand。使用
检查命令if(cmd.getName().equalsIgnoreCase("a")) {
//do stuff when /a is executed
}
可以在那里检查args
。例如:
if(cmd.getName().equalsIgnoreCase("a")) {
if(args[0].equalsIgnoreCase("test1")){
//execute code for /a test1
} else if(args[0].equalsIgnoreCase("test2")){
//execute code for /a test2
}
}
答案 1 :(得分:0)
getCommand将返回null。确保创建了“a”命令。