GoYoutube - BETA

Hier könnt ihr eure selbstgeschriebenen Plugins veröffentlichen.

Re: GoYoutube - BETA

Beitragvon logtainment » Do 2. Apr 2015, 12:13

Ok jetzt steht bei mir in der Konsole dass es noch nicht konfiguriert wurde!
Benutzeravatar
logtainment
 
Beiträge: 8
Registriert: Do 2. Apr 2015, 11:02

Re: GoYoutube - BETA

Beitragvon Sep2703 » Do 2. Apr 2015, 13:19

logtainment hat geschrieben:Ok jetzt steht bei mir in der Konsole dass es noch nicht konfiguriert wurde!

Das erklärt einiges! Weiter wäre Java 8 zu empfehlen. Ich habe jedoch eine Java 7 Version kompiliert, musste dazu folgende Änderungen durchführen:
  • Eigenen Consumer schreiben
  • Variablen, die in einer inneren anonymen Klasse verwendet werden als final deklarieren


ilouHD hat geschrieben:Der findet eine Klasse nicht. Seit der Spigot 1.8 taucht dieser Fehler immer öfters auf.
Auch bei mir findet er teilweise Klassen nicht, die vorhanden sind und meistens sogar im selben Package liegen. Die imports stimmen ja auch.

Das ist schon sehr blöd. Kann man da irgendetwas gegen tun? Ich habe das Problem mit meiner MySQL-Klasse, führe einen Reload durch und es geht wieder. So unlogisch...


// EDIT //
Ich habe folgende Entdeckung gemacht: Unter Spigot 1.8.3 funktioniert alles einwandfrei. Unter Spigot 1.8 kommt es zu folgendem Fehler:
Code: Alles auswählen
  1. [14:24:29] [Server thread/INFO]: Janhektor issued server command: /youtube info http://youtube.com/Janhektor
  2. [14:24:29] [pool-9-thread-1/WARN]: Exception in thread "pool-9-thread-1"
  3. [14:24:29] [pool-9-thread-1/WARN]: java.lang.NoClassDefFoundError: com/google/gson/Gson
  4. [14:24:29] [pool-9-thread-1/WARN]:    at de.janhektor.goyoutube.api.YouTubeInfo.<clinit>(YouTubeInfo.java:63)
  5. [14:24:29] [pool-9-thread-1/WARN]:    at de.janhektor.goyoutube.YouTubeCheck$1.run(YouTubeCheck.java:33)
  6. [14:24:29] [pool-9-thread-1/WARN]:    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
  7. [14:24:29] [pool-9-thread-1/WARN]:    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
  8. [14:24:29] [pool-9-thread-1/WARN]:    at java.lang.Thread.run(Unknown Source)
  9. [14:24:29] [pool-9-thread-1/WARN]: Caused by: java.lang.ClassNotFoundException: com.google.gson.Gson
  10. [14:24:29] [pool-9-thread-1/WARN]:    at java.net.URLClassLoader$1.run(Unknown Source)
  11. [14:24:29] [pool-9-thread-1/WARN]:    at java.net.URLClassLoader$1.run(Unknown Source)
  12. [14:24:29] [pool-9-thread-1/WARN]:    at java.security.AccessController.doPrivileged(Native Method)
  13. [14:24:29] [pool-9-thread-1/WARN]:    at java.net.URLClassLoader.findClass(Unknown Source)
  14. [14:24:29] [pool-9-thread-1/WARN]:    at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:101)
  15. [14:24:29] [pool-9-thread-1/WARN]:    at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:86)
  16. [14:24:29] [pool-9-thread-1/WARN]:    at java.lang.ClassLoader.loadClass(Unknown Source)
  17. [14:24:29] [pool-9-thread-1/WARN]:    at java.lang.ClassLoader.loadClass(Unknown Source)
  18. [14:24:29] [pool-9-thread-1/WARN]:    ... 5 more


Grund dafür: Die Klasse "Gson" (Kern der Google JSON-API) befindet sich bei Spigot 1.8.3 in einem anderen Package.

Information für alle: Ich arbeite an einer Ausweichlösung mithilfe von Reflection.
Du möchtest programmieren lernen oder dein Bukkit-/Spigot-Wissen erweitern?
Hier habe ich für dich kostenlose Tutorials: https://youtube.com/janhektor
Benutzeravatar
Sep2703
 
Beiträge: 677
Registriert: Mi 8. Jan 2014, 15:13
Wohnort: 127.0.0.1

Re: GoYoutube - BETA

Beitragvon ilouHD » Do 2. Apr 2015, 13:48

Sep2703 hat geschrieben:
ilouHD hat geschrieben:Der findet eine Klasse nicht. Seit der Spigot 1.8 taucht dieser Fehler immer öfters auf.
Auch bei mir findet er teilweise Klassen nicht, die vorhanden sind und meistens sogar im selben Package liegen. Die imports stimmen ja auch.

Das ist schon sehr blöd. Kann man da irgendetwas gegen tun? Ich habe das Problem mit meiner MySQL-Klasse, führe einen Reload durch und es geht wieder. So unlogisch...

Man könnte gucken, ob ein Preload der Klassen funktioniert.
Das heißt, man fügt am Anfang/am Ende jeder Klasse eine Methode durch, die dann einfach die Klasse Synchron/Asynchron lädt. Die könnte zum Beispiel so aussehen:
Code: Alles auswählen
  1.    public void loadClass() {
  2.       System.out.println("ClassLoader -> Loading Class " + getClass().getName());
  3.    }

Ist nur die Frage, in wie fern das gut funktioniert und ob es überhaupt funktioniert.
Evtl. lässt man das sysout noch weg, sonst hat man keinen Überblick mehr in der Konsole ;)
Dann ruft man in der onEnable diese Methode für jede Klasse auf.

Muss ich mal testen, wie gut das funktioniert. Oder kann es evtl. an Debian liegen? Bei mir trat der Fehler nur bei Linux / Debian auf.
Da hat das Joinevent nicht funktoniert und es wurde jedem Spieler einfach der Prefix Admin gegeben. Nach nem Reload hatte jeder den richtigen Prefix.
Bild
Benutzeravatar
ilouHD
 
Beiträge: 1733
Registriert: Do 9. Jan 2014, 14:49

Re: GoYoutube - BETA

Beitragvon Sep2703 » Do 2. Apr 2015, 13:52

Ich weiß nicht ... jetzt funktioniert wieder alles einwandfrei.
Aber back to topic.

BETA-UPDATE

Aufgrund von einigen Bugs, die gefunden wurden (Danke an dieser Stelle an alle bisherigen Tester) habe ich nun ein Update durchgeführt.
Folgende Änderungen wurden vorgenommen:
  • Java 7 Support (eigener Consumer wird nun verwendet)
  • Support nun auch für Spigot 1.8 und älter*
* Die JSON-Bibliothek Gson wird nun direkt mit dem Plugin ausgeliefert. So kommt die Dateigröße von etwa 240 KB zustande

Ich wünsche allen noch viel Spaß mit dem Plugin - wir nähern uns der ersten Release-Version!
Wenn weitere Fehler auftreten, hinterlasst doch bitte einen Post (eventuell sogar mit Fehlermeldung) hier.

______________________________
Datei auf Anfrage
Download-Link wird in Kürze verfügbar sein
Du möchtest programmieren lernen oder dein Bukkit-/Spigot-Wissen erweitern?
Hier habe ich für dich kostenlose Tutorials: https://youtube.com/janhektor
Benutzeravatar
Sep2703
 
Beiträge: 677
Registriert: Mi 8. Jan 2014, 15:13
Wohnort: 127.0.0.1

Re: GoYoutube - BETA

Beitragvon Jofkos » Do 2. Apr 2015, 15:11

ilouHD hat geschrieben:
Sep2703 hat geschrieben:
logtainment hat geschrieben:leider Funktioniert dieses Plugin bei mit nicht! Ich habe 1.8.3


Dieser Fehler ist bei einem (nicht lokalen) Test bei mir auch aufgetreten. Dafür haben wir die BETA-Phase. Folgender Fehler trat bei mir auf:
Code: Alles auswählen
  1. [06:36:15 INFO]: PLAYER issued server command: /youtube info https://www.youtube.com/user/xxx-xxx
  2. [06:36:15 WARN]: Exception in thread "pool-77-thread-2"
  3. [06:36:15 WARN]: java.lang.NoClassDefFoundError: Could not initialize class de.janhektor.goyoutube.api.YouTubeInfo
  4. [06:36:15 WARN]:        at de.janhektor.goyoutube.YouTubeCheck$1.run(YouTubeCheck.java:33)
  5. [06:36:15 WARN]:        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  6. [06:36:15 WARN]:        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  7. [06:36:15 WARN]:        at java.lang.Thread.run(Thread.java:745)


Dieser Fehler wird schnellstmöglich analysiert und behoben.

Kann das irgendwie an den neueren Spigotversionen liegen?

Der findet eine Klasse nicht. Seit der Spigot 1.8 taucht dieser Fehler immer öfters auf.
Auch bei mir findet er teilweise Klassen nicht, die vorhanden sind und meistens sogar im selben Package liegen. Die imports stimmen ja auch.

Eine ClassNotFound exception kann auch aus einer Exception im statischen Teil resultieren.
Jofkos

...........

..Bild
Benutzeravatar
Jofkos
 
Beiträge: 1537
Registriert: So 16. Jun 2013, 22:45

Re: GoYoutube - BETA

Beitragvon logtainment » Do 2. Apr 2015, 15:41

Hast du eine Idee wie man das in Pex einbindet? Dass man da YTRang bekommt?
Benutzeravatar
logtainment
 
Beiträge: 8
Registriert: Do 2. Apr 2015, 11:02

Re: GoYoutube - BETA

Beitragvon logtainment » Do 2. Apr 2015, 16:08

Hi,

wenn ich den Command eingebe kommt folgendes:

Code: Alles auswählen
  1. [11:07:36 INFO]: logtainment issued server command: /youtube promote https://www.youtube.com/channel/UC6sIV9mL0cTOi4fVCCj4Ucw
  2. [11:07:36 WARN]: Exception in thread "pool-33-thread-2"
  3. [11:07:36 WARN]: java.lang.NullPointerException
  4. [11:07:36 WARN]:        at de.janhektor.goyoutube.MySQL$7.run(MySQL.java:218)
  5. [11:07:36 WARN]:        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  6. [11:07:36 WARN]:        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  7. [11:07:36 WARN]:        at java.lang.Thread.run(Thread.java:745)


Gruß log
Benutzeravatar
logtainment
 
Beiträge: 8
Registriert: Do 2. Apr 2015, 11:02

Re: GoYoutube - BETA

Beitragvon Sep2703 » Do 2. Apr 2015, 17:49

logtainment hat geschrieben:wenn ich den Command eingebe kommt folgendes:

Code: Alles auswählen
  1. [11:07:36 INFO]: logtainment issued server command: /youtube promote https://www.youtube.com/channel/UC6sIV9mL0cTOi4fVCCj4Ucw
  2. [11:07:36 WARN]: Exception in thread "pool-33-thread-2"
  3. [11:07:36 WARN]: java.lang.NullPointerException
  4. [11:07:36 WARN]:        at de.janhektor.goyoutube.MySQL$7.run(MySQL.java:218)
  5. [11:07:36 WARN]:        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  6. [11:07:36 WARN]:        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  7. [11:07:36 WARN]:        at java.lang.Thread.run(Thread.java:745)


Gruß log


Genau dieser Fehler ist heute auch bei mir aufgetreten - der Fehler ist ziemlich dumm. Ich habe einfach nicht die Daten aus der Config verwendet, um mit der Datenbank zu verbinden. Aus Versehen waren im Code noch nicht statischen Daten ... zum Test ;)
Ich habe diesen Fehler jetzt behoben.
Außerdem habe ich herausgefunden, warum dieser NoClassDefError kam: Im statischen Block habe ich folgende Zeile:
Code: Alles auswählen
  1. gson = new Gson();

Tja, allerdings geht der Code nur für 1.8.3. Ich habe nämlich "com.google.gson.Gson" importiert - in der 1.8 und älter ist diese Klasse jedoch unter "org.bukkit.craftbukkit.libs.com.google.gson.Gson" zu finden.
- Den Fehler habe ich behoben, indem ich einfach Gson in mein Projekt eingebunden habe. So ist das Plugin wirklich sicher unabhängig.



UPDATE AUF BETA 1.2

Nach etwas weiterer Arbeit am Projekt steht nun die BETA 1.2 zur Verfügung.
Folgende Changelog zeigt alle Änderungen sehr genau:
+ Vault Support (1)
+ Gruppen-Support (1)
+ Konfigurierbare MySQL-Zugangsdaten
* Gson wird nun mit dem Plugin ausgeliefert
* Fehler beim Verbinden mit MySQL-Datenbank
* Nicht gefundene HandlerList beim YouTuberEvent
* Zugriffe auf Datenbank unterliegen nun einem Verbindungscheck
* Wenn keine Verbindung besteht, wird erneut versucht, eine aufzubauen

(1) Es wird unbedingt Vault (ich empfehle mindestens Version 1.5.3) auf dem Server benötigt.


Geplant ist noch die Möglichkeit, das System ohne Vault zu verwenden - im Konfigurationsmodus und in der config.yml ist bereits die Grundlage dafür integriert. In der nächsten BETA-Version wird dieses Feature wahrscheinlich vorhanden sein.
Weitere Ideen nehme ich gerne an.


______________________________________________
Die neuste BETA-Version steht zur Verfügung
Zum Download bei Google Drive
Du möchtest programmieren lernen oder dein Bukkit-/Spigot-Wissen erweitern?
Hier habe ich für dich kostenlose Tutorials: https://youtube.com/janhektor
Benutzeravatar
Sep2703
 
Beiträge: 677
Registriert: Mi 8. Jan 2014, 15:13
Wohnort: 127.0.0.1

Re: GoYoutube - BETA

Beitragvon logtainment » Do 11. Feb 2016, 15:33

Hey,
bei mir kommt folgender Fehler:
[09:31:06 INFO]: comdirect issued server command: /youtube info https://www.youtube.com/channel/UC6sIV9 ... 4fVCCj4Ucw
[09:31:06 WARN]: java.io.FileNotFoundException: http://gdata.youtube.com/feeds/api/user ... w?alt=json
[09:31:06 WARN]: at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1836)
[09:31:06 WARN]: at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441)
[09:31:06 WARN]: at java.net.URL.openStream(URL.java:1038)
[09:31:06 WARN]: at de.janhektor.goyoutube.api.YouTubeInfo.download(YouTubeInfo.java:68)
[09:31:06 WARN]: at de.janhektor.goyoutube.api.YouTubeInfo.getSubscribers(YouTubeInfo.java:116)
[09:31:06 WARN]: at de.janhektor.goyoutube.YouTubeCheck$1.run(YouTubeCheck.java:32)
[09:31:06 WARN]: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[09:31:06 WARN]: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[09:31:06 WARN]: at java.lang.Thread.run(Thread.java:745)
[09:31:06 WARN]: Exception in thread "pool-85-thread-1"
[09:31:06 WARN]: java.lang.NullPointerException
[09:31:06 WARN]: at de.janhektor.goyoutube.api.YouTubeInfo.getSubscribers(YouTubeInfo.java:117)
[09:31:06 WARN]: at de.janhektor.goyoutube.YouTubeCheck$1.run(YouTubeCheck.java:32)
[09:31:06 WARN]: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[09:31:06 WARN]: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[09:31:06 WARN]: at java.lang.Thread.run(Thread.java:745)

Woran liegt das, da das plugin sau geil ist!
Benutzeravatar
logtainment
 
Beiträge: 8
Registriert: Do 2. Apr 2015, 11:02

Vorherige

Zurück zu Veröffentlichungen

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast