• 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!

Brauche Hilfe: SQLibrary [@Benni1000]

Status
Für weitere Antworten geschlossen.

Lanzettlich

Minecrafter
Registriert
11 September 2012
Beiträge
19
Diamanten
0
Hallo!

Ich hab mir auf youtube das video von benni1000games angeschaut mit sqlibrary.
Ich habe den code genau so abgetippt wie benni das gemacht hat aber bei /show (hab ich statt /get genommen) kommt: an internal error occoured while attempting to perform this command.
Die db-file in meinem Pluginordner ist leider auch leer
ich habe den ordner sqlibrary leider nicht importieren können bei properties (sondern nur sqlibrary.jar) weil ich nicht wusste wo ich den ordner herbekomme

Fehlermeldung in der console:
2012-09-21 20:15:03 [INFO] Lanzettlich issued server command: /show
2012-09-21 20:15:03 [SEVERE] null
org.bukkit.command.CommandException: Unhandled exception executing command 'show' in plugin sqliteplugin v1.0
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42)
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:168)
at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:492)
at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:880)
at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:826)
at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:808)
at net.minecraft.server.Packet3Chat.handle(Packet3Chat.java:44)
at net.minecraft.server.NetworkManager.b(NetworkManager.java:276)
at net.minecraft.server.NetServerHandler.d(NetServerHandler.java:109)
at net.minecraft.server.ServerConnection.b(SourceFile:35)
at net.minecraft.server.DedicatedServerConnection.b(SourceFile:30)
at net.minecraft.server.MinecraftServer.q(MinecraftServer.java:578)
at net.minecraft.server.DedicatedServer.q(DedicatedServer.java:213)
at net.minecraft.server.MinecraftServer.p(MinecraftServer.java:474)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:406)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:539)
Caused by: java.lang.ArrayIndexOutOfBound***ception: 0
at me.Lanzettlich.sqliteplugin.sqliteplugin.onCommand(sqliteplugin.java:63)
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40)
... 15 more

Der pluginsourcecode
static final Logger log = Bukkit.getLogger();
private SQLite sqlite;
public void onEnable()
{
System.out.println("[SQLITETESTPLUGIN] Aktiviert");
sqlite = new SQLite(log, "SQLITETESTPLUGIN", "sqlitetestplugindb", "plugins/sqlitetestplugin");
if(!sqlite.checkTable("test"))
{
sqlite.createTable("CREATE TABLE IF NOT EXISTS test (id INTEGER PRIMARY KEY AUTOINCREMENT,userText TEXT;)");
}
log.info("Sqlitetestplugin enabled.");
}

public void onDisable()
{
System.out.println("[sqlitetestplugin] Deaktiviert");
log.info("sqlitetestplugin disabled.");
}

public boolean onCommand(CommandSender sender, Command cmd, String CommandLabel, String[] args)
{
if(cmd.getName().equalsIgnoreCase("add"))
{
if(args.length == 0)
{
sender.sendMessage("Falsche Benutzung! /add [Text]");
} else {
String message = "";
for (String s : args)
{
message = message + s + " ";
}
message = message.replace("'", "");
sqlite.query("INSERT INTO test (userText) VALUES ('"+message+"')");
sender.sendMessage("$aDanke für deinen Eintrag!");


}
}

if(cmd.getName().equalsIgnoreCase("show"))
{
try
{
int id = Integer.parseInt(args[0]);
ResultSet result = sqlite.query("SELECT * FROM test WHERE id = "+id);
if(result != null)
{
try {
result.next();
String text = result.getString("userText");
sender.sendMessage("Inhalt von " + id + " ist " + text);
result.close();
return true;
} catch (SQLException e) {
Logger.getLogger(sqliteplugin.class.getName()).log(Level.SEVERE, null, e);
}

}

} catch(java.lang.NumberFormatException ex)
{
sender.sendMessage("$4Das ist keine gültige Nummer!");
}
}
return true;
}

ich hoffe um hilfe
mfg lanzettlich
 
X

|| xX [DEV][LP] Ms. DivaCraft Xx ||

Guest
if(cmd.getName().equalsIgnoreCase("show"))
{

füg danach mal ein
if(args.length == 0)
{
sender.sendMessage("Falsche Benutzung! /show [id]");
}else{
//try..... -> catch(){}
}

PS: Du solltest vielleicht erstmal Java Lernen, und den code verstehen..
 

Lanzettlich

Minecrafter
Registriert
11 September 2012
Beiträge
19
Diamanten
0
sehr hilfreiche beiträge...
ich möchte einfach nur wissen, wo der fehler liegt und bin nicht neugierig auf deine ach so hilfreichen beiträge - kann ich gut drauf verzichten.
wenn du selbst keine ahnung hast, dann brauchst du erst garnicht zu posten.
 
C

ChristianG

Guest
Mir scheint es, dass alle die in diesem Thread Ahnung von der Materie haben (oder zumindest wissen, wie man mit solchen Situation umzugehen hat) bis auf du!

Es bringt DIR nichts aus YouTube Videos Code abzukupfern, wenn du nichts davon verstehst!
Weißt du über haupt, wass ein if(){} Statement ist? Oder gar eine Methode?
Lern erstmal Java und wage dich dann an Bukkit.

Du lernst ja auch nicht zuerst, wie man einen englischen Text interpretieren und erweitern kann, bevor du Englisch selbst lernst.
Du musst erst die Grundlage verstehen, um dann "Erweiterungen" zu erlernen!
 
X

|| xX [DEV][LP] Ms. DivaCraft Xx ||

Guest
Davon mal abgesehen, dass Benni einen funktionierenden Code hat und du zu unfähig warst diesen zu kopieren. Ich habe es sogar, so nett wie ich war, getestet mit meiner Ergänzung und ich habe keine Probleme. Aber du scheinst ja auch unfähig zu sein Kritik aufzunehmen, daher lern erstmal dies, dann lese z.B. die Javainsel und dann wage dich nochmal an Bukkit heran.
 
Status
Für weitere Antworten geschlossen.
Oben