Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Exception in thread "main" java.lang.NoClassDefFoundError : Helloworld

8 réponses
Avatar
tom_dupont
Débutant en java,

j'essaie de compiler un programme simple. Lors de l'exécution, j'obtiens
systématiquement l'erreur "
Exception in thread "main" java.lang.NoClassDefFoundError : Helloworld

J'ai essayé avec le j2sdk1.4.0 et le j2sdk1.4.2_05

Voici le code de cet exercice


class HelloWorld { // début du programme
public static void main (String args[ ]) { // début le ma méthode
main()
System.out.println(" Hello World ! "); // affichage du texte
désiré
} // fin de ma méthode main()
} // fin du programme

Voici un autre exercice :

// Listing 5.2 : Programme Elvis
class Elvis {
public static void main(String[] arguments) {
int weight = 120;
System.out.println("Elvis pèse " + weight);
System.out.println("Elvis se goinfre au buffet.");
System.out.println("Elvis reprend encore du dessert.");
weight = weight + 10;
System.out.println("Elvis pèse désormais " + weight);
System.out.println("Elvis découvre l'aérobic.");
weight = weight - 15;
System.out.println("Elvis pèse désormais " + weight);
System.out.println("Elvis se met à la diète pendant "
+ "trois semaines.");
weight = weight / 3;
System.out.println("Elvis pèse désormais " + weight);
System.out.println("Elvis se clone 12 fois.");
weight = weight + (weight * 12);
System.out.println("Les 13 Elvis pèsent " + weight);
}
}

Il me semble que je définis pas correctement la classe Helloworld. Mais
comment faut-il faire ? Ce sont des exercices tout fait ?!?


Merci Tom

8 réponses

Avatar
Fabien Bergeret
Tom wrote:
Débutant en java,

j'essaie de compiler un programme simple. Lors de l'exécution, j'obtiens
systématiquement l'erreur "
Exception in thread "main" java.lang.NoClassDefFoundError : Helloworld

J'ai essayé avec le j2sdk1.4.0 et le j2sdk1.4.2_05

Voici le code de cet exercice


class HelloWorld { // début du programme
public static void main (String args[ ]) { // début le ma méthode
main()
System.out.println(" Hello World ! "); // affichage du texte
désiré
} // fin de ma méthode main()
} // fin du programme

Voici un autre exercice :

// Listing 5.2 : Programme Elvis
class Elvis {
public static void main(String[] arguments) {
int weight = 120;
System.out.println("Elvis pèse " + weight);
System.out.println("Elvis se goinfre au buffet.");
System.out.println("Elvis reprend encore du dessert.");
weight = weight + 10;
System.out.println("Elvis pèse désormais " + weight);
System.out.println("Elvis découvre l'aérobic.");
weight = weight - 15;
System.out.println("Elvis pèse désormais " + weight);
System.out.println("Elvis se met à la diète pendant "
+ "trois semaines.");
weight = weight / 3;
System.out.println("Elvis pèse désormais " + weight);
System.out.println("Elvis se clone 12 fois.");
weight = weight + (weight * 12);
System.out.println("Les 13 Elvis pèsent " + weight);
}
}

Il me semble que je définis pas correctement la classe Helloworld. Mais
comment faut-il faire ? Ce sont des exercices tout fait ?!?


Merci Tom
A mon avis, c'est que ton classpath n'inclut pas ., ou que tu lances

java depuis un autre repertoire que celui qui contient les .class.
Donc, soit tu te mets dans le repertoire qui contient .class, et tu
tapes java -classpath . Helloworld, soit tu tapes set
CLASSPATH=repertoire contenant tes .class, et apres java Helloworld

Avatar
Mat Free
j'essaie de compiler un programme simple. Lors de l'exécution, j'obtiens
systématiquement l'erreur "
Exception in thread "main" java.lang.NoClassDefFoundError : Helloworld
J'ai essayé avec le j2sdk1.4.0 et le j2sdk1.4.2_05

class HelloWorld { // début du programme


plutôt public class HelloWorld je pense.

--
Mat

Avatar
Johann Burkard
Tom wrote:
Exception in thread "main" java.lang.NoClassDefFoundError : Helloworld
|

.----------------------------------------------------°
/
class HelloWorld { // début du programme


En plus, c'est _public_ class.

Johann
--
Da ich zu der Zeit ein Leben unter Christen gelebt habe ( Rückführung in
Hypnose ) und wegen meines Glaubens gefoltert und verbrannt habe ich
allen Grund dazu
("Tux" in )

Avatar
tom_dupont
Merci
C'est bien le classpath qui manquait.


Tom
Avatar
Vincent Cantin
public static void main (String args[ ]) { // début le ma méthode


Ca compile, ca ???

A mon avis, c'est ton fichier .class qui te manque :-)

Essaie "public static void main (String[ ] args)" a la place.

Avatar
Fabien Bergeret
Vincent Cantin wrote:
public static void main (String args[ ]) { // début le ma méthode



Ca compile, ca ???

A mon avis, c'est ton fichier .class qui te manque :-)

Essaie "public static void main (String[ ] args)" a la place.


Voui, voui, ca compile. Pour les tableaux, les deux syntaxes type [] nom

et type nom [] sont valides, meme si la premiere est preferable (la
seconde est heritee du C)


Avatar
Vincent Cantin
"Fabien Bergeret"
???????:4247ec4d$0$30462$
Vincent Cantin wrote:
public static void main (String args[ ]) { // début le ma méthode



Ca compile, ca ???

A mon avis, c'est ton fichier .class qui te manque :-)

Essaie "public static void main (String[ ] args)" a la place.


Voui, voui, ca compile. Pour les tableaux, les deux syntaxes type [] nom

et type nom [] sont valides, meme si la premiere est preferable (la
seconde est heritee du C)


Tu ne voudrais pas dire le contraire, plutot ?

moi c'est "String[ ] args" que je prefere .. ca stipule clairement que le
tableau est un element du type, ce qui est vrai quelque soit le language
(... a mon humble avis).



Avatar
Fabien Bergeret
Vincent Cantin wrote:
"Fabien Bergeret"
???????:4247ec4d$0$30462$

Vincent Cantin wrote:

public static void main (String args[ ]) { // début le ma méthode



Ca compile, ca ???

A mon avis, c'est ton fichier .class qui te manque :-)

Essaie "public static void main (String[ ] args)" a la place.




Voui, voui, ca compile. Pour les tableaux, les deux syntaxes type [] nom
et type nom [] sont valides, meme si la premiere est preferable (la
seconde est heritee du C)



Tu ne voudrais pas dire le contraire, plutot ?

moi c'est "String[ ] args" que je prefere .. ca stipule clairement que le
tableau est un element du type, ce qui est vrai quelque soit le language
(... a mon humble avis).


On est d'accord (si, si, si...) : 'type [] nom' est preferable a 'type

nom []' car le type "reel" de la variable ou de l'attribut est 'type []'