conqu_error
Новичок
- Баллы
- 16
Здравствуйте. При разработке плагина столкнулся с ошибкой. Для удобства я хотел сделать несколько классов. Но при загрузке плагина выводит такую ошибку:
Класс CommandSpy:
Класс Data:
Помогите, пожалйста.
Заранее спасибо.
[08:50:50 WARN]: Caused by: java.lang.IllegalArgumentException: Plugin already initialized!
[08:50:50 WARN]: at org.bukkit.plugin.java.PluginClassLoader.initialize(PluginClassLoader.java:183)
[08:50:50 WARN]: at org.bukkit.plugin.java.JavaPlugin.<init>(JavaPlugin.java:60)
[08:50:50 WARN]: at ru.quietw.qspy.CommandSpy.<init>(CommandSpy.java:14)
[08:50:50 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
[08:50:50 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
[08:50:50 WARN]: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
[08:50:50 WARN]: at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
[08:50:50 WARN]: at java.lang.Class.newInstance(Class.java:442)
[08:50:50 WARN]: at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:90)
[08:50:50 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:129)
[08:50:50 WARN]: ... 13 more
[08:50:50 WARN]: Caused by: java.lang.IllegalStateException: Initial initialization
[08:50:50 WARN]: at org.bukkit.plugin.java.PluginClassLoader.initialize(PluginClassLoader.java:186)
[08:50:50 WARN]: at org.bukkit.plugin.java.JavaPlugin.<init>(JavaPlugin.java:60)
[08:50:50 WARN]: at ru.quietw.qspy.CommandSpy.<init>(CommandSpy.java:14)
[08:50:50 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
[08:50:50 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
[08:50:50 WARN]: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
[08:50:50 WARN]: at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
[08:50:50 WARN]: at java.lang.Class.newInstance(Class.java:442)
[08:50:50 WARN]: at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:90)
[08:50:50 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:129)
[08:50:50 WARN]: at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:327)
[08:50:50 WARN]: at com.rylinaux.plugman.util.PluginUtil.load(PluginUtil.java:356)
[08:50:50 WARN]: at com.rylinaux.plugman.util.PluginUtil.load(PluginUtil.java:318)
[08:50:50 WARN]: at com.rylinaux.plugman.util.PluginUtil.reload(PluginUtil.java:380)
[08:50:50 WARN]: at com.rylinaux.plugman.command.ReloadCommand.execute(ReloadCommand.java:122)
[08:50:50 WARN]: at org.bukkit.plugin.java.PluginClassLoader.initialize(PluginClassLoader.java:183)
[08:50:50 WARN]: at org.bukkit.plugin.java.JavaPlugin.<init>(JavaPlugin.java:60)
[08:50:50 WARN]: at ru.quietw.qspy.CommandSpy.<init>(CommandSpy.java:14)
[08:50:50 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
[08:50:50 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
[08:50:50 WARN]: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
[08:50:50 WARN]: at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
[08:50:50 WARN]: at java.lang.Class.newInstance(Class.java:442)
[08:50:50 WARN]: at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:90)
[08:50:50 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:129)
[08:50:50 WARN]: ... 13 more
[08:50:50 WARN]: Caused by: java.lang.IllegalStateException: Initial initialization
[08:50:50 WARN]: at org.bukkit.plugin.java.PluginClassLoader.initialize(PluginClassLoader.java:186)
[08:50:50 WARN]: at org.bukkit.plugin.java.JavaPlugin.<init>(JavaPlugin.java:60)
[08:50:50 WARN]: at ru.quietw.qspy.CommandSpy.<init>(CommandSpy.java:14)
[08:50:50 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
[08:50:50 WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
[08:50:50 WARN]: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
[08:50:50 WARN]: at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
[08:50:50 WARN]: at java.lang.Class.newInstance(Class.java:442)
[08:50:50 WARN]: at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:90)
[08:50:50 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:129)
[08:50:50 WARN]: at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:327)
[08:50:50 WARN]: at com.rylinaux.plugman.util.PluginUtil.load(PluginUtil.java:356)
[08:50:50 WARN]: at com.rylinaux.plugman.util.PluginUtil.load(PluginUtil.java:318)
[08:50:50 WARN]: at com.rylinaux.plugman.util.PluginUtil.reload(PluginUtil.java:380)
[08:50:50 WARN]: at com.rylinaux.plugman.command.ReloadCommand.execute(ReloadCommand.java:122)
Код:
package ru.quietw.qspy;
import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.event.Listener;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
import java.io.File;
import java.util.List;
public class CommandSpy extends JavaPlugin implements Listener {
File config = new File(getDataFolder() + File.separator + "config.yml");
@Override
public void onEnable() {
Bukkit.getServer().getPluginManager().registerEvents(this, this);
if(!config.exists()){
getConfig().options().copyDefaults(true);
saveDefaultConfig();
}
}
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
if(command.getName().equalsIgnoreCase("spyon")){
if(sender.hasPermission("qplay.spy")) {
Data data = new Data();
List<String> list = getConfig().getStringList("enabledPlayers");
list.add(sender.getName());
getConfig().set("enabledPlayers", list);
data.saveData(getConfig(), config);
sender.sendMessage(getConfig().getString("spyOnMsg").replace("&", "§"));
}
}
if(command.getName().equalsIgnoreCase("spyreload")){
PluginManager plMan = Bukkit.getServer().getPluginManager();
plMan.getPlugin("QuietSpy").reloadConfig();
sender.sendMessage(getConfig().getString("reloadedMsg").replace("&", "§"));
}
return false;
}
}
Код:
package ru.quietw.qspy;
import org.bukkit.configuration.file.FileConfiguration;
import java.io.File;
import java.io.IOException;
public class Data {
public void saveData(FileConfiguration config, File configFile){
try{
config.save(configFile);
} catch(IOException e){
e.printStackTrace();
}
}
}
Заранее спасибо.