Salut,
J'ai programmé un code java, quand je l'ai compilé aucune erreur ne m'apparait mais quand je l'exécute l'exception suivante m'apparait java.lang.NoClassDefFoundError .
Pouvez vous m'aider
Merci
Salut,
J'ai programmé un code java, quand je l'ai compilé aucune erreur ne m'apparait mais quand je l'exécute l'exception suivante m'apparait java.lang.NoClassDefFoundError .
Pouvez vous m'aider
Merci
NoClassDefFoundError
(c'est écrit dans la javadoc)Thrown if the Java Virtual Machine or a ClassLoader instance tries to load in the definition of a class (as part of a normal method call or as part of creating a new instance using the new expression) and no definition of the class could be found.
The searched-for class definition existed when the currently executing class was compiled, but the definition can no longer be found.
Vérifie que tu as tout ce qu'il faut dans ton "classpath"...
NoClassDefFound est différent de ClassNotFound - qui signifie que la classe n'est pas trouvée dans le classpath -.
Un NoClassDefFound signifie qu'une classe n'as pas réussit à s'initialisé - l'instance de la classe n'as pas put être crée -
Une multitude de raison peuvent arriver :
- Erreur dans la JVM (Erreur et pas Exception)
- Un bloc d'initialisation static à généré une erreur
- Incompatibilité de librairies java
- ...
Venez visiter mon site sur developpez ou mon blog perso
+1 (autant pour moi)Envoyé par woodwai
Sinon, il faudrait avoir le message d' "erreur" complet...
Salut;
Voici mon code
import java.io.*;
import java.util.*;
import javax.comm.*;
public class SimpleList {
static CommPortIdentifier portId;
static Enumeration portList;
SerialPort serialPort;
public static void main(String[] args) {
portList = CommPortIdentifier.getPortIdentifiers();
while (portList.hasMoreElements()) {
portId = (CommPortIdentifier) portList.nextElement();
if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
System.out.println("Port Name is "+portId.getName());
}
}
}
}
j'ai placé le fichier win32com.dll sous le repertoire bin de jdk et jre
de les fichiers comm.jar et javax.comm.properties sous le repertoire lib du jdk et jre et j'ai placé dans la variable d'environnement classpath <jdk>\lib\comm.jar
mais le problème c'est que lors de l'exécution cette exception m'apparut: java.lang.NoClassDefFoundError javax.comm.CommPortIdentifier
Pouvez vous m'aider
Merci
Donc apparement, tu as un problème au niveau de l'initialisation de javax.comm.CommPortIdentifier. Comme je ne connait pas du tout cette API je ne peut t'aider.
Recherche plutôt du coté de l'utilisation et de la configuration de cette API.
Désolé de ne pas pouvoir t'aider plus.
Venez visiter mon site sur developpez ou mon blog perso
Je vais peut etre dire une connerie mais on a pas se genre d'erreur lorsqu'on cherche a acceder a une variable statique d'une classe qui n'a pas encore ete instanciee ? Mais je vois pas ou ce probleme pourrait apparaitre dans ton code.
Partager