-2
我是bukkit 1.8.3編程的初學者,但是當測試時我正在爲我的服務器製作一個命令包,現在我收到了這個錯誤。讓我說我想操作我自己我輸入命令BOOM這個錯誤出現。讓我們說醫治命令不要這個錯誤。以下是錯誤日誌:無法轉換爲org.bukkit.entity.Player
11:33:56 PM [WARN] Unexpected exception while parsing console command "heal Herobrine112211"
11:33:56 PM org.bukkit.command.CommandException: Unhandled exception executing command 'heal' in plugin UltimateCommandPack v1.0.5
11:33:56 PM at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[bukkit.jar:git-Bukkit-61ef214]
11:33:56 PM at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:140) ~[bukkit.jar:git-Bukkit-61ef214]
11:33:56 PM at org.bukkit.craftbukkit.v1_8_R2.CraftServer.dispatchCommand(CraftServer.java:625) ~[bukkit.jar:git-Bukkit-61ef214]
11:33:56 PM at org.bukkit.craftbukkit.v1_8_R2.CraftServer.dispatchServerCommand(CraftServer.java:611) [bukkit.jar:git-Bukkit-61ef214]
11:33:56 PM at net.minecraft.server.v1_8_R2.DedicatedServer.aN(DedicatedServer.java:372) [bukkit.jar:git-Bukkit-61ef214]
11:33:56 PM at net.minecraft.server.v1_8_R2.DedicatedServer.A(DedicatedServer.java:337) [bukkit.jar:git-Bukkit-61ef214]
11:33:56 PM at net.minecraft.server.v1_8_R2.MinecraftServer.z(MinecraftServer.java:626) [bukkit.jar:git-Bukkit-61ef214]
11:33:56 PM at net.minecraft.server.v1_8_R2.MinecraftServer.run(MinecraftServer.java:534) [bukkit.jar:git-Bukkit-61ef214]
11:33:56 PM at java.lang.Thread.run(Unknown Source) [?:1.7.0_75]
11:33:56 PM Caused by: java.lang.ClassCastException: org.bukkit.craftbukkit.v1_8_R2.command.ColouredConsoleSender cannot be cast to org.bukkit.entity.Player
11:33:56 PM at me.herobrine112211.ulticmdpack.System.onCommand(System.java:39) ~[?:?]
11:33:56 PM at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[bukkit.jar:git-Bukkit-61ef214]
11:33:56 PM ... 8 more
這裏是代碼:
package me.herobrine112211.ulticmdpack;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.plugin.java.JavaPlugin;
public class System extends JavaPlugin implements Listener{
public void onEnable() {
getConfig().options().copyDefaults(true);
saveConfig();
Bukkit.getServer().getPluginManager().registerEvents(this, this);
Bukkit.getServer().getLogger().info("Ultimate Command Pack Plugin has been actived!");
}
public void onDisable() {
Bukkit.getServer().getLogger().info("Ultimate Command Pack Plugin has been disabled! This will give big problems to server.");
}
@EventHandler
public void onPlayerJoin(PlayerJoinEvent joinevent){
Player getplayer = joinevent.getPlayer();
getplayer.sendMessage(ChatColor.AQUA + "Hey " + getplayer.getName() + "! Welcome to the Ultimate Prison server!");
if(getplayer.getName().equals("Herobrine112211")){
Bukkit.getServer().broadcastMessage(ChatColor.WHITE + "[" + ChatColor.GOLD + "BROADCAST" + ChatColor.WHITE + "] " + ChatColor.GOLD + "Server Creator Herobrine112211 has joined the game!!!!!!!!!!");
}
}
@SuppressWarnings("deprecation")
public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
Player player = (Player) sender;
if (cmd.getName().equalsIgnoreCase("contactowner")) {
if (!sender.hasPermission("contactowner")){
sender.sendMessage(ChatColor.RED + "Access denied.");
return true;
}
if (!(sender instanceof Player)) {
sender.sendMessage(ChatColor.RED + "Console will never need owner support.");
return true;
}
player.sendMessage(ChatColor.GOLD + "Owner: Herobrine112211. Live chat skype: gangsteris33.");
}
if (cmd.getName().equalsIgnoreCase("reloadconfig")){
if (!sender.hasPermission("config.reload")){
sender.sendMessage(ChatColor.RED + "Access denied.");
return true;
}
reloadConfig();
sender.sendMessage(ChatColor.RED + "Server config reloaded successfully.");
return true;
}
if (cmd.getName().equalsIgnoreCase("saveconfig")){
if (!sender.hasPermission("config.save")){
sender.sendMessage(ChatColor.RED + "Access denied.");
return true;
}
reloadConfig();
sender.sendMessage(ChatColor.RED + "Server config saved successfully.");
return true;
}
if (cmd.getName().equalsIgnoreCase("fakeop")) {
if (!sender.hasPermission("fake.op")){
sender.sendMessage(ChatColor.RED + "Access denied.");
return true;
}
if (args.length == 0) {
sender.sendMessage(ChatColor.RED + "Please specify a player!");
return true;
}
Player target = Bukkit.getServer().getPlayer(args[0]);
if (target == null) {
sender.sendMessage(ChatColor.RED + "Player must be online!");
return true;
}
target.sendMessage(ChatColor.YELLOW + "You are now op!");
}
if (cmd.getName().equalsIgnoreCase("fakejoin")) {
if (!sender.hasPermission("fake.join")){
sender.sendMessage(ChatColor.RED + "Access denied.");
return true;
}
if (args.length == 0) {
sender.sendMessage(ChatColor.RED + "Please specify a name!");
return true;
}
Bukkit.getServer().broadcastMessage(ChatColor.YELLOW + args[0] + " joined the game.");
}
if (cmd.getName().equalsIgnoreCase("broadcast")) {
if (!sender.hasPermission("broadcast")){
sender.sendMessage(ChatColor.RED + "Access denied.");
return true;
}
if (args.length == 0) {
sender.sendMessage(ChatColor.RED + "Please give a message to broadcast!");
return true;
}
StringBuilder strbl = new StringBuilder();
for(int i = 0; i < args.length; i++){
strbl.append(args[i] + " ");
}
String broadcastas = strbl.toString();
Bukkit.getServer().broadcastMessage(ChatColor.WHITE + "[" + ChatColor.GOLD + "BROADCAST" + ChatColor.WHITE + "] " + ChatColor.RED + broadcastas);
}
if (cmd.getName().equalsIgnoreCase("heal")) {
if (!sender.hasPermission("heal")){
sender.sendMessage(ChatColor.RED + "Access denied.");
return true;
}
if (args.length == 0) {
player.setHealth(20);
player.setFireTicks(0);
sender.sendMessage(ChatColor.GREEN + "Your health is now full!");
return true;
}
Player target = Bukkit.getServer().getPlayer(args[0]);
if (target == null) {
sender.sendMessage(ChatColor.RED + "Player must be online to be healed!");
return true;
}
target.setHealth(20);
target.setFireTicks(0);
target.sendMessage(ChatColor.GREEN + sender.getName() + " healed you!");
sender.sendMessage(ChatColor.GREEN + target.getName() + " is healed!");
}
if (cmd.getName().equalsIgnoreCase("feed")) {
if (!sender.hasPermission("feed")){
sender.sendMessage(ChatColor.RED + "Access denied.");
return true;
}
if (args.length == 0) {
player.setFoodLevel(20);
sender.sendMessage(ChatColor.GREEN + "Your hunger is now full!");
return true;
}
Player target = Bukkit.getServer().getPlayer(args[0]);
if (target == null) {
sender.sendMessage(ChatColor.RED + "Player must be online to be fed!");
return true;
}
target.setFoodLevel(20);
target.sendMessage(ChatColor.GREEN + sender.getName() + " fed you!");
sender.sendMessage(ChatColor.GREEN + target.getName() + " hunger is now full!");
}
return true;
}
}
,我會給你plugin.xml文件太config.yml是還未通行(空):
這就是所有我希望你能告訴我如何解決這一問題?