tout ce que vous avez toujours voulu savoir sur le CLASSPATH

tout ce que vous avez toujours voulu savoir sur le CLASSPATH - Java - Programmation

Marsh Posté le 02-09-2003 à 00:46:05    

On a souvent des questions sur le classpath, donc pour éviter de se répéter, voici un topic qui lui est entièrement consacré.
Si après avoir lu tout ca :sweat: vous avez encore des questions, ce topic est fait pour ca ;)
 
 
 
0) quand je lance mon programme java ou que je compile, ca me mets java.lang.ClassNotFoundException ou java.lang.NoClassDefFoundError [:toad666]
 
Pas de panique, c'est une erreur classique quand on débute : ton classpath est mal configuré.  
 
1) Ok, mais le classpath, c'est quoi ? :??:
 
C'est une variable. Elle est composées de plusieurs chemin (path). Les chemins désignent soit des répertoires, soit des fichiers jar. Ces chemins peuvent être absolus ou relatifs. Le caractère utilisé pour séparer les différents chemins est dépendant de l'OS : sous windows c'est le point virgule ';', sous linux/unix c'est les deux points ':'. Attention : l'orde dans lequel vous mettez les différents chemins est important.
 
exemple de classpath sous windows :  
.;d:\java\lib\xerces.jar;d:\java\projets\javaBot\classes;"C:\Program Files\toto.jar"
 
Dans cet exemple, on définit 4 chemins :  
 - le répertoire courant
 - le fichier d:\java\lib\xerces.jar
 - le répertoire d:\java\projets\javaBot\classes
 - le fichier C:\Program Files\toto.jar. On mets des " autour parce qu'il y a un espace dans le chemin.
 
remarque : sous windows on peut utiliser '/' ou '\' comme séparateur de répertoire.
 
 
2) D'accord, mais ca sert à quoi le classpath ? :gratgrat:
 
C'est utilisé par le compilateur et le machine virtuelle java pour retrouver les classes dont a besoin un programme.
Par exemple, si j'ai besoin d'utiliser un parser XML (xerces par exemple), pour que le compilateur et la JVM retrouvent les classes du parser, il va falloir ajouter la librairie xerces.jar au classpath.
 
En pratique, quand Java a besoin d'une classe, il va parcourir le classpath (dans l'ordre) et va chercher dans chacun des chemins du classpath si il trouve la classe. Si à la fin il n'a pas trouvé la classe en question, il balance une ClassNotFoundException (si on compile) ou une NoClassDefFoundError (si on execute)
 
Quand on installe le JDK de SUN, aucun classpath n'est définit !!!!! Même le répertorie courant n'est pas dedans. C'est une erreur classique de débutant : on se met dans le repertoire dans lequel se trouve les fichiers compilés, on tape java HelloWorld et on se mange un NoClassDefFoundError :/. La solution : taper  java -classpath . HelloWorld. Dans la partie 4, je détaille comment configurer le classpath ...
 
3) depuis tout à l'heure tu parles de jar, c'est quoi ?? :o
 
Un fichier jar c'est un fichier compressé. Ca veut dire Java ARchive. Le format de compression est le zip : essyez, vous verrez que vous pouvez ouvrir un fichier jar avec winzip. Habituellement, les jar sont utilisés pour stocker les classes d'une API.
En fait un jar c'est un repertoire compressé. Donc quand on inclut un jar dans le classpath, ca revient au même que si on décompessait le jar et qu'on incluait dans le classpath le repertoire dans lequel on l'a décompressé.
 
 
4) Ok, bon je sais ce que c'est, je sais à quoi ca sert. Maintenant, comment je fais pour le configurer :sweat:
 
là ca se complique : y a plusieurs solution, et ca dépend de l'environnement dans lequel tu travailles.
 
  a) Si tu utilises un IDE : (très fortement déconseillé pour les premiers pas en Java !!! jbuilder suxor !!!)
 
La façon de configurer le classpath dépend de l'IDE. Je vais essayer de repertorier ici les manipulations à faire pour tous les IDE. Moi je me sers d'Eclipse => je vais commenter la façon de faire d'eclipse. Ceux qui se servent d'autres IDE, merci de me laisser la marche à suivre, je l'incluerai ici.
 
     i) Eclipse
 
dans le menu project/properties/java Build Path/Librairies
Si les jars ou les repertoires à inclure sont dans l'arborescence du projet, bouton "Add JARS..." ou "Add Class Folder...". sinon, si c'est un jar => boutons "Add External JAR..." ou si c'est un repertorie "Add Variable" (ca marche aussi avec les jar)
 
     ii) JCreator
 
Configure => Option => JDKProfiles
On séléctionne le jdk utilisé (en général y'en a qu'un)
pi on va dans Edit
Ensuite On a la fiche de tous les jar et dossier du "classpath" de Jcreator. Add Path pour rajouter un dossier, et Add Archive pour rajouter un jar
 
     iii) JBuilder
 
Outils => configurer les JDk
Ca affiche la liste des jar et dossier du classpath
Pour en rajouter : "Ajouter" pi vou mettez vos classes, vos jars ect...
 
 
  b) si on compile à la main dans un shell (conseillé pour les premiers pas : c'est chiant, mais c'est comme ca qu'on apprend)
 
- La 1ere solution est d'écrire le classpath à chacune des commandes de compilation ou de lancement du programme. ex sous windows :
 
javac -classpath .\lib\xerces.jar -d .\classes .\src\monpackage\*.java
 
java -classpath .\lib\xerces.jar;.\classes monpackage.MaClasse
 
 
- La 2e solution c'est de mettre le classpath en variable systeme : java et javac vont chercher cette variable lorsqu'aucun classpath n'est défini en ligne de commance.
 
sous windows 9x :
Dans c:\autoexec.bat, ajouter une ligne du type  :
SET CLASSPATH=.;d:\java\lib\xerces.jar;%CLASSPATH%
 
sous windows NT/2000/XP :
démarrer/paramêtre/panneau de configuration/système/avancé/variable d'environnement
créer une variable CLASSPATH (si elle n'existe pas) et lui donner une valeur du type :
.;d:\java\lib\xerces.jar
 
C'est pratique : après on a plus qu'à faire java monpackage.MaClasse et ca fonctionne. Mais au bout d'un moment, quand on travaille sur bcp de projet, on finit par avoir un classpath système ENOOOOOOOOOOORME [:w3c compliant]
 
- la 3e solution c'est un mixe des deux : utiliser un fichier batch pour configurer le classpath.
exemple sous windows (shell DOS): dans un fichier setEnv.bat :

Citation :

SET CLASSPATH=.
SET CLASSPATH=%CLASSPATH%;d:\java\lib\xerces.jar
SET CLASSPATH=%CLASSPATH%;d:\java\lib\xalan.jar
SET CLASSPATH=%CLASSPATH%;d:\java\projets\utils\classes


 
Quand on lance le shell, on execute le fichier setenv, et on a le classpath de configuré pour ce shell. On peut ensuite se servir de java et de javac sans l'option -classpath
 
 
5) j'ai rien compris ! j'ai pas envie de tout lire ! je comprend qu'avec des exemples (rayez les mentions inutiles) ;)
 
L'exemple suivant est sous windows : je lis un fichier de conf XML contenant un nom et je dis bonjour à cette personne. Un helloworld remit au goût du jour quoi ;)
 
On va faire les choses proprement : je créé un rep e:\java\test pour mon projet.
Dedans, je créé un repertoire src qui va contenir les fichier sources (.java), un répertoire classes qui contiendra les fichier compilés, un répertoir lib qui contiendra les jar et un répertoire conf qui contiendra les fichier de configuration (ici le fichier XML)
 
E:\java\test
 -> src
 -> classes
 -> lib
 -> conf
 
première chose, installer Java. Moi je suis en 1.4.2 ca se passe là : http://java.sun.com/j2se/1.4.2/download.html. Attention : faut prendre le SDK, pas le JRE sinon vous n'aurez pas le compilateur. L'installe est tranquille. C'est un bête exe.
 
Ensuite, récupérer un parser XML. Ici je vais prendre xerces : http://xml.apache.org/dist/xerces-j/ (moi c'est la version 2.5 : Xerces-J-bin.2.5.0.zip).
Faut décompresser le zip pour trouver les fichiers xercesImpl.jar et xml-apis.jar. Il faut les copier dans le repértoire e:\java\test\lib.
 
Voici le fichier XML dont je vais me servir : e:\java\test\conf\data.xml


<?xml version="1.0"?>
<data>
   <name>Benou</name>
</data>


 
On peut maintenant ecrire le source. Je vais appeler ma classe HelloXML et la mettre dans le package hfr.benou => le fichier source est e:\java\test\src\hfr\benou\HelloXML.java
 
voici son contenu :

Code :
  1. package hfr.benou;
  2. import java.io.*;
  3. import javax.xml.parsers.*;
  4. import org.w3c.dom.*;
  5. public class HelloXML {
  6.    public static void usage() {
  7.       System.out.println("Usage : java hfr.benou.HelloXML xmlFile" );
  8.       System.exit(-1);
  9.    }
  10.    public static void main (String[] args) throws Exception {
  11.       if (args.length != 1) {
  12.          usage();
  13.       }     
  14.       DocumentBuilderFactory builderFact = DocumentBuilderFactory.newInstance();
  15.       DocumentBuilder docBuilder = builderFact.newDocumentBuilder();
  16.       Document doc = docBuilder.parse(new File(args[0]));
  17.       Element node = (Element) doc.getElementsByTagName("data" ).item(0);
  18.       node =  (Element) node.getElementsByTagName("name" ).item(0);
  19.       String name = node.getFirstChild().getNodeValue();
  20.       System.out.println("Hello " + name + " !" );
  21.    }
  22. }


 
 
Maintenant on fait quelques fichiers batch pour faciliter les choses :
 
 - e:\java\test\setEnv.bat : (à lancer une fois au lancement du shell)

Citation :


SET JAVA_HOME=C:\utils\j2sdk1.4.0_02
SET PATH=%JAVA_HOME%\bin;%PATH%
 
SET CLASSPATH=.\lib\xercesImpl.jar
SET CLASSPATH=%CLASSPATH%;.\lib\xml-apis.jar
SET CLASSPATH=%CLASSPATH%;.\classes


ici je redéfinit la variable JAVA_HOME, mais je crois me souvenir que c'est fait pendant l'installe du JDK. Dans le doute, mettez le repértoire dans lequel vous avez installé le JDK.
 
 - e:\java\test\make.bat : (pour compiler)

Citation :


javac -classpath %CLASSPATH% -d .\classes src\hfr\benou\*.java


 
 - e:\java\test\run.bat : (pour lancer le prog)

Citation :


java -classpath %CLASSPATH% hfr.benou.HelloXML .\conf\data.xml


 
Maintenant faut ouvrir une fenêtre DOS, aller dans le rep e:\java\test, lancer setenv, lancer make (ca créé le fichier E:\java\test\classes\hfr\benou\HelloXML.class), et lancer run et ca affiche :

Citation :


Hello Benou !


 
et voilà ! :)
 
[:tonton_benou]
 
 
 
Voir aussi : Le topic-passage-obligé pour débutants !


Message édité par benou le 25-05-2005 à 14:25:02

---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 02-09-2003 à 00:46:05   

Reply

Marsh Posté le 02-09-2003 à 00:54:31    

:ouch: [:prosterne]
 
je voudrais quand meme ajouter qu'en dehors du "." et de rares (tres rares) exceptions, on considerera que mettre des jars dans le CLASSPATH système est une mauvaise pratique [:aloy]
 
(c'est par exemple la porte grande ouverte à des conflits à la con entre librairies chargées par une appli et librairies identiques mais de versions differentes présente sur le classpath)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 02-09-2003 à 00:58:24    

tout à fait ! et même le '.', en pratique on ne s'en sert pas ...
 
la bonne méthode est d'avoir un environnement par projet : soit configuré dans l'IDE, soit dans des fichiers batch (.bat, ant, etc ...)


Message édité par benou le 02-09-2003 à 01:00:47

---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 02-09-2003 à 01:01:01    

ouais enfin perso le . je l'y ai mis pour le coté pratique quand meme :o


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 02-09-2003 à 01:25:23    

eh mais on dirait que ce topic a tiré inspiration du mien :D


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 02-09-2003 à 09:04:16    

[:prosterne] benou [:prosterne2]


Message édité par darklord le 02-09-2003 à 09:04:22

---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 02-09-2003 à 09:21:40    

il te reste plus qu'à rajouter dans les biliolinks
edit: tiens j'ai pas fait de remarque trollesque  :heink:


Message édité par Taz le 02-09-2003 à 09:22:52
Reply

Marsh Posté le 02-09-2003 à 17:51:02    

Le Hello World de brute [:ddr555] Tout ça pour foutre xerces.jar dans le classpath :lol:


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 02-09-2003 à 17:52:23    

Taiche a écrit :

Le Hello World de brute [:ddr555] Tout ça pour foutre xerces.jar dans le classpath :lol:


:D
 
faut bien trouver un exemple :)


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 24-11-2003 à 19:57:47    

[:drapo] sa race, merci benou,
ça marche maitenant :sweat:


Message édité par uriel le 24-11-2003 à 19:58:14

---------------
IVG en france
Reply

Marsh Posté le 24-11-2003 à 19:57:47   

Reply

Marsh Posté le 25-11-2003 à 09:30:26    

y a deux fois le point 4) :D

Reply

Marsh Posté le 25-11-2003 à 09:37:54    

gizmo a écrit :

y a deux fois le point 4) :D


:o
 
(j'avais vu en plus [:cupra])


Message édité par benou le 25-11-2003 à 09:38:27

---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 25-11-2003 à 12:44:04    

clap clap
 
joli topic mais ca parle q de l'environnement M$
pourrait-on mentionner les differences avec (par expl) Linux?
 
parcq justement g un soucis avec les classpath. -> http://forum.hardware.fr/forum2.ph [...] subcat=390
 
 
edit: je viens de trouver la solution a mon probleme en relisant ton topic. Il fallait mettre le .JAR dans le classpath
 
encore merci :jap:


Message édité par xmulder le 25-11-2003 à 13:31:15
Reply

Marsh Posté le 25-11-2003 à 13:01:52    

cool comme topic :)
merci :jap:

Reply

Marsh Posté le 25-11-2003 à 14:45:48    

xmulder a écrit :

clap clap
pourrait-on mentionner les differences avec (par expl) Linux?


le topic est ouvert : si tu as les commandes exactes, donnes les et je les ajouterai au premier post


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 25-11-2003 à 16:13:06    

benou a écrit :


le topic est ouvert : si tu as les commandes exactes, donnes les et je les ajouterai au premier post


export CLASSPATH=$CLASSPATH:./lib/xml-apis.jar  
 
 
 
 
ps: perso j'ai un classpath systeme completement vide, a part parfois le . qd je suis d'humeur feignante. je sette le classpath specifiquement pour chaque appli (soit betement par java -cp blablabla.jar , soit avec un script specifique)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 25-11-2003 à 16:21:37    

le export, c'est pour les bsh. pour les csh, c'est la commande
 
setenv CLASSPATH "${CLASSPATH}:./lib/xml-apis.jar"

Reply

Marsh Posté le 25-11-2003 à 16:22:58    

oui [:spamafote]
en meme temps, qqun sous csh est sans doute au courant :D


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 25-11-2003 à 16:25:07    

bah oui, mais bon, xmulder semblait le demander :D

Reply

Marsh Posté le 27-11-2003 à 12:28:53    

je suis sous bash, mais je n'utilise pas $CLASSPATH.  
je suis pas un java-coder (d'où la question de nioubi) mais fallait q je teste une appli sur ma machine et je la lance avec -classpath=...  
 
merci.

Reply

Marsh Posté le 27-11-2003 à 12:37:32    

oui c'est bcp mieux je trouve aussi :whistle:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 27-11-2003 à 15:07:27    

j'ai pas compris pourquoi tu as fait une partie XML ?
 
ca reste qd meme assez spécifique

Reply

Marsh Posté le 27-11-2003 à 22:09:52    

veryfree a écrit :

j'ai pas compris pourquoi tu as fait une partie XML ?


pour l'exemple tu veux dire ?
 
c'était juste pour montrer un exemple d'importation de librairie externe ...


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 28-11-2003 à 01:31:06    

oki :)

Reply

Marsh Posté le 28-11-2003 à 09:11:54    

on peut avoir des infos sur les classloader, leur implémentations, les contraintes de sécurité qu'on peut y associer pour se faire une sandbox ?
[:neowen]

Reply

Marsh Posté le 28-11-2003 à 10:30:42    

lorill a écrit :

on peut avoir des infos sur les classloader, leur implémentations, les contraintes de sécurité qu'on peut y associer pour se faire une sandbox ?
[:neowen]


 
moi je veux bien (lorill serieux ca m'interesse moi :whistle: )


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 28-11-2003 à 10:42:44    

lorill a écrit :

on peut avoir des infos sur les classloader, leur implémentations, les contraintes de sécurité qu'on peut y associer pour se faire une sandbox ?
[:neowen]


je suis pas un pro du ClassLoader, mais si quelqu'un maîtrise le sujet et peut faire un petit topo dessus, ca m'intéresse vachement !  :)


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 28-11-2003 à 10:52:38    

DarkLord a écrit :


moi je veux bien (lorill serieux ca m'interesse moi :whistle: )


zut :o
 
http://www4.informatik.uni-erlange [...] l/6-A4.pdf

Reply

Marsh Posté le 16-12-2003 à 10:57:37    

J'ai créé un Jar exécutable et je l'ai mis dans le dossier c:\program files\WdView
Pour l'exécution "interface graphique", je double clique sur le JAR : ça marche.
 
Pour l'exécution en mode commande ( java -jar WdView.jar ), java ne trouve pas l'archive, je suis obligé de mettre le path complet.
 
J'ai essayé de définir le CLASSPATH  : C:\program files\wdview\wdview.jar et le PATH : c:\program files\wdview
mais rien à faire.
Qu'est ce que j'ai fait de mal ???

Reply

Marsh Posté le 16-12-2003 à 11:15:52    

Procédure pour configurer le classpath dans JCreator
 
Configure => Option => JDKProfiles
On séléctionne le jdk utilisé (en général y'en a qu'un)
pi on va dans Edit
Ensuite On a la fiche de tous les jar et dossier du "classpath" de Jcreator. Add Path pour rajouter un dossier, et Add Archive pour rajouter un jar
 
Procédure pour configurer le classpath dans JBuilder
 
Outils => configurer les JDk
Ca affiche la liste des jar et dossier du classpath
Pour en rajouter : "Ajouter" pi vou mettez vos classes, vos jars ect...
 
Voila Benou. (c bien ce que tu voulais non?)
PS : Bravo pour ce topic, ca c de l'investissement! Merci!


Message édité par meumeul le 16-12-2003 à 11:20:11
Reply

Marsh Posté le 16-12-2003 à 12:41:04    

Citation :

Pour l'exécution en mode commande ( java -jar WdView.jar ), java ne trouve pas l'archive, je suis obligé de mettre le path complet.


c'est normal ca ... c'est pas un problème de classpath ni de path ... c'est juste que tu dois indiquer le fichier à utiliser. => soit tu te mets dans le rep où se trouve le fichier et ca va marcher, soit tu mets le chemin complet. Là t'as pas trop le choix ....
 
edit : et merci :)


Message édité par benou le 16-12-2003 à 21:57:06

---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 07-02-2004 à 08:51:33    

[:abnocte invictus]

Reply

Marsh Posté le 22-02-2004 à 21:39:48    

Je suis le livre très intéressant de Bruce Eckel "Thinking in java" et je coince au niveau de la création de packages...
 
J'ai 2 fichiers placés dans le répertoire C:\j2sdk1.4.2_03\evolvox\outils  :
 

Code :
  1. package evolvox.outils;
  2. public class List{
  3. public List(){
  4.  System.out.println("evolvox.outils.List" );
  5. }
  6. }


 

Code :
  1. package evolvox.outils;
  2. public class Vector{
  3. public Vector(){
  4.  System.out.println("evolvox.outils.Vector" );
  5. }
  6. }


 
Ensuite j'importe ces 2 classes à l'aide de ceci :
 

Code :
  1. import evolvox.outils.*;
  2. public class LibTest{
  3. public static void main(String[] args){
  4.  Vector v = new Vector();
  5.  List l = new List();
  6. }
  7. }


 
qui, quand je compile, m'engueule avec la fameuse erreur  (:cry:)  :
 
Exception in thread "main" java.lang.NoClassDefFoundError
 
 
Pourtant, il me semble avoir correctement écrit mon CLASSPATH :  
 

.;C:\j2sdk1.4.2_03


 
 
Une idée ?


Message édité par Evolvox le 22-02-2004 à 21:40:44

---------------
gaymer's est la personne la plus formidable jamais rencontrée dans toute ma vie, je lui achèterais un makato et au moins les 4 news pourries quotidiennes qui vont avec
Reply

Marsh Posté le 22-02-2004 à 21:44:54    

et tu les a compilées tes 2 autres classes ?

Reply

Marsh Posté le 22-02-2004 à 21:45:44    

euh si ct une erreur comme quoi il trouve pas les classes que tu as importées il te le dirait plus explicitement.

Reply

Marsh Posté le 22-02-2004 à 21:47:09    

Oui, j'ai compilé les classes Vector et List, et n'y a pas eu d'erreur...


---------------
gaymer's est la personne la plus formidable jamais rencontrée dans toute ma vie, je lui achèterais un makato et au moins les 4 news pourries quotidiennes qui vont avec
Reply

Marsh Posté le 22-02-2004 à 21:48:57    

Je vais mettr el'erreur en entier, je me disais que ça n'apportait pas grand chose...
 


C:\j2sdk1.4.2_03\thinking\5>javac Libtest.java
 
C:\j2sdk1.4.2_03\thinking\5>java Libtest
Exception in thread "main" java.lang.NoClassDefFoundError: Libtest (wrong name:
LibTest)
        at java.lang.ClassLoader.defineClass0(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)


---------------
gaymer's est la personne la plus formidable jamais rencontrée dans toute ma vie, je lui achèterais un makato et au moins les 4 news pourries quotidiennes qui vont avec
Reply

Marsh Posté le 22-02-2004 à 21:50:04    

Pfff...
 
Erreur de majuscule...
 
Désolé.
 
[:nero27]


Message édité par Evolvox le 22-02-2004 à 21:52:10

---------------
gaymer's est la personne la plus formidable jamais rencontrée dans toute ma vie, je lui achèterais un makato et au moins les 4 news pourries quotidiennes qui vont avec
Reply

Marsh Posté le 22-02-2004 à 21:51:31    

j'allais le dire...

Reply

Marsh Posté le 29-02-2004 à 18:28:05    

hello,
 
j'ai un projet, mais j'arrive pas à le configurer sur cette merde de NetBeans :fou:
 
Ca compile bien mais à l'exécution il me met : java.lang.NoClassDefFoundError: blablabla
pourtant j'ai bien fait Menu Project -> Set Project Main Class et j'ai sélectionné la classe qui contenait le main() ...
 
pour info j'ai aucun problème avec la ligne de commande et avec Jcreator !!!
 
y'a quelqu'un qui connait NetBeans ?

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed