• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Spigot Fehlermeldung bei Pluginstart

spela

Minecrafter
Registriert
4 September 2017
Beiträge
9
Diamanten
320
Hi,

ich habe mich heute mal an die Minecraft Pluginprogrammierung getraut und komme nun nicht mehr weiter. Wenn ich das Plugin lade kommt folgende Fehlermeldung:

Code:
[18:02:08 ERROR]: Could not load 'plugins\MT-AutoMessage.jar' in folder 'plugins'
org.bukkit.plugin.InvalidPluginException: java.lang.IllegalArgumentException: Plugin already initialized!
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:135) ~[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 net.minecraft.server.v1_8_R3.DedicatedServer.init(DedicatedServer.java:198) [spigot.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:525) [spigot.jar:git-Spigot-db6de12-18fbb24]
        at java.base/java.lang.Thread.run(Unknown Source) [?:?]
Caused by: java.lang.IllegalArgumentException: Plugin already initialized!
        at org.bukkit.plugin.java.PluginClassLoader.initialize(PluginClassLoader.java:122) ~[spigot.jar:git-Spigot-db6de12-18fbb24]
        at org.bukkit.plugin.java.JavaPlugin.<init>(JavaPlugin.java:66) ~[spigot.jar:git-Spigot-db6de12-18fbb24]
        at paket.Main.<init>(Main.java:8) ~[?:?]
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[?:?]
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[?:?]
        at java.base/java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:?]
        at java.base/java.lang.Class.newInstance(Unknown Source) ~[?:?]
        at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:76) ~[spigot.jar:git-Spigot-db6de12-18fbb24]
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:131) ~[spigot.jar:git-Spigot-db6de12-18fbb24]
        ... 6 more
Caused by: java.lang.IllegalStateException: Initial initialization
        at org.bukkit.plugin.java.PluginClassLoader.initialize(PluginClassLoader.java:125) ~[spigot.jar:git-Spigot-db6de12-18fbb24]
        at org.bukkit.plugin.java.JavaPlugin.<init>(JavaPlugin.java:66) ~[spigot.jar:git-Spigot-db6de12-18fbb24]
        at paket.Main.<init>(Main.java:8) ~[?:?]
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[?:?]
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[?:?]
        at java.base/java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:?]
        at java.base/java.lang.Class.newInstance(Unknown Source) ~[?:?]
        at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:76) ~[spigot.jar:git-Spigot-db6de12-18fbb24]
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:131) ~[spigot.jar:git-Spigot-db6de12-18fbb24]
        ... 6 more

Code der Main Klasse:
Java:
package paket;

import org.bukkit.Bukkit;
import org.bukkit.plugin.java.JavaPlugin;

import java.util.Timer;
import java.util.TimerTask;

public class Main extends JavaPlugin {

    public void onEnable() {
        System.out.println("MT-AutoMessage was started!");
    }

    public void onDisable() {
        System.out.println("MT-AutoMessage was stopped!");
    }

    public void TimerTask(){
        TimerTask automessage = new TimerTask() {
            public void run() {
                Bukkit.broadcastMessage("test");
            }
        };
        Timer timer = new Timer("Timer");

        long delay = 1000L;
        long period = 1000L;
        timer.scheduleAtFixedRate(automessage, delay, period);
    }

}

Vielen Dank für eure Hilfe!
 

JOO200

Braumeister
Registriert
18 Dezember 2016
Beiträge
442
Diamanten
228
Hast du schon ein Plugin mit dem gleichen Pfad zu deiner Main Klasse?
paket.Main ist nicht sonderlich gut gewählt, normalerweise nimmt man da etwas, was Hinweise auf die Quelle hergibt.
Bei de.joo.iconomy.MyIconomyPlugin weiß direkt ein andere Entwickler/Admin was das konkret für ein Plugin ist.
 

SirYwell

PlotSquared Entwickler
Registriert
30 Juni 2017
Beiträge
540
Diamanten
488
Minecraft
SirYwell
Bei de.joo.iconomy.MyIconomyPlugin weiß direkt ein andere Entwickler/Admin was das konkret für ein Plugin ist.
Viel entscheidender ist ja der Punkt, dass Java logischerweise keine zwei Klassen, die den gleichen Namen haben und im gleichen Package liegen, laden kann (Um ganz genau zu sein: Es ist theoretisch möglich, wird aber eben von Bukkit nicht so gehandhabt, weil es eine sehr unsaubere und anfällige Lösung wäre). Wäre in etwa so, wie wenn man zwei Dokumente mit dem gleichen Namen im gleichen Ordner abspeichern möchte.
 
Oben