Projet1A2A : D&D
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le deal à ne pas rater :
Réassort du coffret Pokémon 151 Électhor-ex : où l’acheter ?
Voir le deal

Rapporter un bug

3 participants

Aller en bas

Rapporter un bug Empty Rapporter un bug

Message par Jolan Dim 2 Déc - 2:16

Bonjour, ce sujet a pour but de signaler tout les bugs rencontrés afin de les corriger.

Je commence, j'ai déjà eu à plusieurs reprises cette exception :

Code:
Exception in thread "main" java.lang.NoClassDefFoundError: gui/containers/gm/EditorListener
   at gui.containers.gm.GMWindow.initializeMainPanel(GMWindow.java:41)
   at gui.containers.Window.<init>(Window.java:21)
   at gui.containers.gm.GMWindow.<init>(GMWindow.java:31)
   at mj.ClientMJ.loop(ClientMJ.java:35)
   at mj.Main.main(Main.java:24)
Caused by: java.lang.ClassNotFoundException: gui.containers.gm.EditorListener
   at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
   at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
   at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
   ... 5 more

Et je pense que je ne suis pas le seul. Cependant, habituellement, un simple make mj ou make clean après l'exception résolvait le problème.
Mais cette fois, non.

J'ai donc essayé quelques trucs et j'en suis arrivé à la conclusion que j'y comprenais rien aux Exceptions Java. Crying or Very sad

- Mise en commentaire de plein de trucs -> aucun changement. No
- Remplacement de "abstract class EditorListener ..." par "class EditorListener" (j'ai viré abstract)
-> Résultat, l'exception n'apparait plus MAIS j'en ai une autre ! confused


Code:
Exception in thread "main" java.lang.NoClassDefFoundError: gui/components/gm/MonCellRenderer
   at gui.components.gm.MapElementSelector.<init>(MapElementSelector.java:117)
   at gui.containers.gm.GMMapEditorTab.<init>(GMMapEditorTab.java:264)
   at gui.containers.gm.GMWindow.initializeMainPanel(GMWindow.java:41)
   at gui.containers.Window.<init>(Window.java:21)
   at gui.containers.gm.GMWindow.<init>(GMWindow.java:31)
   at mj.ClientMJ.loop(ClientMJ.java:35)
   at mj.Main.main(Main.java:24)
Caused by: java.lang.ClassNotFoundException: gui.components.gm.MonCellRenderer
   at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
   at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
   at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
   ... 7 more

Je me dis "Lol WTF?" puis "Quitte à bricoler, autant bricoler crade".
Du coup je passe "MonCellRenderer" qui pose problème en abstract.
Résultat : ça ne compile plus : on ne peut pas instancier une classe abstraite (normal quoi).

Du coup je retire le abstract et là... WHAT THE FUCK ?! affraid
Je recompile (SANS RIEN CHANGER D'AUTRE, j'insiste parce que j'ai VRAIMENT RIEN CHANGÉ D'AUTRE)
et devinez quoi ? ça marche -_-". Suspect
Du coup je me dis "et si je remet abstract sur EditorListener l'exception va revenir :S", je remet abstract et :O surprise... pas d'exception. Shocked

Pour résumer :
- Je vire abstract sur EditorListener -> exception sur monCellrender -> je le passe en abstract -> erreur compilation -> j'enleve le abstract de monCellRenderer -> ça compile -> je remet abstract sur EditorListener -> ÇA COMPILE WHAT?! What a Face

Si quelqu'un aurait la moindre idée de comment un tel truc est possible ça m'intéresse, et si vous savez comment le résoudre, encore plus.
Jolan
Jolan
Admin

Messages : 58
Age : 104
Localisation : Voie Lactée, bordure extérieure, ceinture d'astéroïdes, Kashyyk, Kamino centre, 22 rue des légendes.

Feuille de personnage
Nom du personnage:

Revenir en haut Aller en bas

Rapporter un bug Empty Re: Rapporter un bug

Message par Jérémy Dim 2 Déc - 10:40

Je ne sais pas quand le problème intervient.
Par contre, il vient de la gestion des .class et du Makefile.

J'ai eu le problème aussi, plusieurs fois, et toujours avec des classes internes.
Je crois qu'un des moyens de résoudre le problème est de sauvegarder le fichier (ou faire un "touch", quelque chose pour changer la date de dernière modication), ce qui provoque la recompilation du fichier.

J'vais essayer de voir d'où ça peut venir.

EDIT :
En fait, dans GearCreation et dans WeaponCreation, on avait des classes ayant le même nom (MatListener, ImageComponent).
Javac sauvegarde ces classes là dans des fichiers .class normaux, comme MatListener.class.
Le problème, c'est qu'on avait 2 MatListener différents (donc constructeurs différents). C'est pour ça que lorsque WeaponCreation fonctionnait, GearCreation ne fonctionnait pas.

Pour résoudre ça, j'ai créé une MatList dans le package "mj" (à déplacer dans gui/ si on s'en sert pour l'interface MJ un jour), et j'ai renommé "TypeListener" en "GearTypeListener" et "WeaponTypeListener".
Au passage, j'ai amélioré un peu le Makefile (plus rapide, et affichage plus clair).
Jérémy
Jérémy
Analyste-programmeur
Analyste-programmeur

Messages : 79

Feuille de personnage
Nom du personnage:

https://projetdd.1fr1.net

Revenir en haut Aller en bas

Rapporter un bug Empty Re: Rapporter un bug

Message par Djidane Zokawa Jeu 24 Jan - 13:24

J'ai un bug qui arrive sur les déplacements de créatures (généralement les grosses).
1 - Soit le déplacement ne s'effectue pas malgré qu'on a demandé le déplacement
2 - le déplacement est effectué et des fois la liste des pos atteignables ne se refresh pas
3 - d'autres bugs mineurs non visibles...

4 - (pas un bug mais à corriger) Le joueur n'est pas censé pouvoir voir la liste des pos atteignables des créatures adversaires. Il faut le cacher.
Djidane Zokawa
Djidane Zokawa
Analyste-programmeur
Analyste-programmeur

Messages : 74

Feuille de personnage
Nom du personnage:

Revenir en haut Aller en bas

Rapporter un bug Empty Re: Rapporter un bug

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum