Ich habe ein eigenes plugin programmiert und es geht nicht?

Ich habe ein Plugin programmiert und es kommt immer ein fehler.

Could not load 'plugins\ScoreBoardByGame5.jar' in folder 'plugins'

org.bukkit.plugin.InvalidPluginException: main class `ScoreBoard.Game5.classes.Main' does not extend JavaPlugin

       at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:73) ~[spigot.jar:git-Spigot-db6de12-18fbb24]

       at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:131) ~[spigot.jar:git-Spigot-db6de12-18fbb24]

       at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:329) ~[spigot.jar:git-Spigot-db6de12-18fbb24]

       at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:251) [spigot.jar:git-Spigot-db6de12-18fbb24]

       at org.bukkit.craftbukkit.v1_8_R3.CraftServer.loadPlugins(CraftServer.java:292) [spigot.jar:git-Spigot-db6de12-18fbb24]

       at org.bukkit.craftbukkit.v1_8_R3.CraftServer.reload(CraftServer.java:739) [spigot.jar:git-Spigot-db6de12-18fbb24]

       at org.bukkit.Bukkit.reload(Bukkit.java:535) [spigot.jar:git-Spigot-db6de12-18fbb24]

       at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:25) [spigot.jar:git-Spigot-db6de12-18fbb24]

       at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) [spigot.jar:git-Spigot-db6de12-18fbb24]

       at org.bukkit.craftbukkit.v1_8_R3.CraftServer.dispatchCommand(CraftServer.java:641) [spigot.jar:git-Spigot-db6de12-18fbb24]

       at org.bukkit.craftbukkit.v1_8_R3.CraftServer.dispatchServerCommand(CraftServer.java:627) [spigot.jar:git-Spigot-db6de12-18fbb24]

       at net.minecraft.server.v1_8_R3.DedicatedServer.aO(DedicatedServer.java:412) [spigot.jar:git-Spigot-db6de12-18fbb24]

       at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:375) [spigot.jar:git-Spigot-db6de12-18fbb24]

       at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [spigot.jar:git-Spigot-db6de12-18fbb24]

       at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [spigot.jar:git-Spigot-db6de12-18fbb24]

       at java.lang.Thread.run(Unknown Source) [?:1.8.0_141]

Caused by: java.lang.ClassCastException: class ScoreBoard.Game5.classes.Main

       at java.lang.Class.asSubclass(Unknown Source) ~[?:1.8.0_141]

       at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:71) ~[spigot.jar:git-Spigot-db6de12-18fbb24]

       ... 15 more

...zum Beitrag

package ScoreBoard.Game5.classes;

import org.bukkit.Bukkit;

import org.bukkit.entity.Player;

import org.bukkit.event.EventHandler;

import org.bukkit.event.Listener;

import org.bukkit.event.player.PlayerJoinEvent;

import org.bukkit.event.player.PlayerQuitEvent;

import org.bukkit.plugin.java.JavaPlugin;

import org.bukkit.scheduler.BukkitRunnable;

import org.bukkit.scoreboard.DisplaySlot;

import org.bukkit.scoreboard.Objective;

import org.bukkit.scoreboard.Scoreboard;

import org.bukkit.scoreboard.ScoreboardManager;

public class Main extends JavaPlugin implements Listener {

   @Override

   public void onEnable() {

      this.getServer().getPluginManager().registerEvents(this, this);

   }

   public void setScoreboard(Player p) {

   ScoreboardManager sm = Bukkit.getScoreboardManager();

   final Scoreboard board = sm.getNewScoreboard();

   final Objective o = board.registerNewObjective("test", "dummy");

   o.setDisplaySlot(DisplaySlot.SIDEBAR);

   o.setDisplayName("§7» §bFoxy.de§7«");

   o.getScore("§a ").setScore(11);

   o.getScore("§cRang:").setScore(10);

   if (p.hasPermission("Prefix.admin")) {

      o.getScore("§4Admin").setScore(9);

   } else if (p.hasPermission("Prefix.dev")) {

      o.getScore("§bDeveloper").setScore(9);

   } else {

      o.getScore("§8Spieler").setScore(9);

   }

   o.getScore("§b ").setScore(8);

   o.getScore("§cOnline: ").setScore(7);

   o.getScore("§f" + Bukkit.getOnlinePlayers().size() + "/" + Bukkit.getMaxPlayers()).setScore(6);

   o.getScore("§c ").setScore(5);

   o.getScore("§cTeamSpeak").setScore(4);

   o.getScore("§fEyran.de§c").setScore(3);

   o.getScore("").setScore(2);

   o.getScore("§cTeamSpeak:").setScore(1);

   o.getScore("§f79.133.45.222:9409").setScore(0);

   p.setScoreboard(board);

   }

   @EventHandler

   public void onJoin(PlayerJoinEvent e) {

      new BukkitRunnable() {

         @Override

         public void run() {

            for (Player all : Bukkit.getOnlinePlayers()) {

               setScoreboard(all);

            }

         }

      }.runTaskLater(this, 1);

   }

   @EventHandler

   public void onQuit(PlayerQuitEvent e) {

      new BukkitRunnable() {   

         @Override

         public void run() {

            for (Player all : Bukkit.getOnlinePlayers()) {

               setScoreboard(all);

            }

         }

      }.runTaskLater(this, 1);

   }

}
...zur Antwort