Erreur java.lang.NoClassDefFoundError: applet
Résolu
Ange Angelique
Messages postés
43
Date d'inscription
Statut
Membre
Dernière intervention
-
scriptiz Messages postés 1424 Date d'inscription Statut Membre Dernière intervention -
scriptiz Messages postés 1424 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je sais que la questions a deja été posée, mais j'ai esseyé tout ce qu'il y avait dans les forums, rien ne marche:
l'applet n'est pas reconnue dans mon navigateur et j'ai l'erreur:
java.lang.NoClassDefFoundError: applet1 (wrong name: package1/applet1)
mon applet:
import java.applet.*;
import java.awt.*;
import java.util.*;
public class applet1 extends Applet{
public void paint(Graphics g) {
g.drawString ("Je suis une Applet Java!", 15, 15);
}
}
ma page html:
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
TODO write content
<APPLET CODE=applet1.class WIDTH=200 HEIGHT=100 ALIGN=MIDDLE></APPLET>
</body>
</html>
j'ai copié la classé générée dans le même repertoire que la page web, toujours rien,
Je suis sur netbeans 6.8 et j'utilise glassfish integré dans netbeans.
L'applet n'est qu'un exemple, j'ai voulu esseyé un exemple simple rien que pour tester
Merci pour votre aide (c'est urgent)
je sais que la questions a deja été posée, mais j'ai esseyé tout ce qu'il y avait dans les forums, rien ne marche:
l'applet n'est pas reconnue dans mon navigateur et j'ai l'erreur:
java.lang.NoClassDefFoundError: applet1 (wrong name: package1/applet1)
mon applet:
import java.applet.*;
import java.awt.*;
import java.util.*;
public class applet1 extends Applet{
public void paint(Graphics g) {
g.drawString ("Je suis une Applet Java!", 15, 15);
}
}
ma page html:
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
TODO write content
<APPLET CODE=applet1.class WIDTH=200 HEIGHT=100 ALIGN=MIDDLE></APPLET>
</body>
</html>
j'ai copié la classé générée dans le même repertoire que la page web, toujours rien,
Je suis sur netbeans 6.8 et j'utilise glassfish integré dans netbeans.
L'applet n'est qu'un exemple, j'ai voulu esseyé un exemple simple rien que pour tester
Merci pour votre aide (c'est urgent)
A voir également:
- Java noclassdeffounderror
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- J'aime par erreur facebook notification - Forum Facebook
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
- Java code erreur 1603 ✓ - Forum Windows
4 réponses
je te remercie beaucoup de m'avoir répondu, finalement c'etait un probleme d'ajout de quelque chose au niveau du html.
voila pour ceux qui ont en besoin:
il fallait ajouter le chemain de l'applet et l'instruction codebase qui determine le repertoire par lequel il fallait passer a partir du fichier html pour retrouver l'applet, voila ce que ça donne dans mon cas:
<APPLET CODE="repertoire_de_'applet/MyGame.class" WIDTH=800 HEIGHT=600 codebase="." >
J'ai mis le fichier html appellant l'applet dans le même repertoire que le dossier contenant l'applet, et j'ai rajouté codebase=".' pour dire qu'il est dans le même repertoire,
voila, je me demande pourquoi ça n'avait pas marché avant, il a fallu que je fasse un tour à la fac, que je demande a tous les passants, et que je trouves finalement le problème seule lol
Enfin voila, je peux le mettre en résolu maintenant, encore merci pour ton aide :)
voila pour ceux qui ont en besoin:
il fallait ajouter le chemain de l'applet et l'instruction codebase qui determine le repertoire par lequel il fallait passer a partir du fichier html pour retrouver l'applet, voila ce que ça donne dans mon cas:
<APPLET CODE="repertoire_de_'applet/MyGame.class" WIDTH=800 HEIGHT=600 codebase="." >
J'ai mis le fichier html appellant l'applet dans le même repertoire que le dossier contenant l'applet, et j'ai rajouté codebase=".' pour dire qu'il est dans le même repertoire,
voila, je me demande pourquoi ça n'avait pas marché avant, il a fallu que je fasse un tour à la fac, que je demande a tous les passants, et que je trouves finalement le problème seule lol
Enfin voila, je peux le mettre en résolu maintenant, encore merci pour ton aide :)
Si tu as cette erreur c'est tout simplement que Java ne trouve pas une des classes nécessaires au bon déroulement de ton programme.
Commence par mettre une majuscule au nom de la classe de ton applet1 (Applet1 par exemple), ensuite appelle le fichier java ainsi que le .class de la même façon.
Voici un tout vieil applet que j'avais fait mais qui fonctionnait (pas super bien mais il tourne au moins :P)
Merci de ne pas critiquer, c'était mes premiers pas en programmation Java et je n'ai plus fait d'applets depuis ^^
Et la page en "vieil" HTML :P :
"The most successful method of programming is to begin a program as simply as possible, test it, and then add to the program until it performs the required job." -- PDP8 handbook, Pg 9-64
Commence par mettre une majuscule au nom de la classe de ton applet1 (Applet1 par exemple), ensuite appelle le fichier java ainsi que le .class de la même façon.
Voici un tout vieil applet que j'avais fait mais qui fonctionnait (pas super bien mais il tourne au moins :P)
Merci de ne pas critiquer, c'était mes premiers pas en programmation Java et je n'ai plus fait d'applets depuis ^^
/******************************************************************************* * Petit programme Java inspiré par les applets "Neko" et "Keys" de la formule * * "Teach Java in 21days", créé par Scriptiz le 14/03/2004. * *******************************************************************************/ import java.awt.Graphics; import java.awt.Event; import java.awt.Font; import java.awt.Color; import java.awt.Image; public class MyGame extends java.applet.Applet { Image currimg; Image test1; Image test2; int currx; int curry; double count; double swit; long flip; long chg; public void init() { count = Math.random(); swit = 0.5; flip = 1; chg = 3; currimg = getImage(getCodeBase(), "images/stop.gif"); test1 = getImage(getCodeBase(), "images/sleep1.gif"); test2 = getImage(getCodeBase(), "images/stop.gif"); currx = (size().width / 2) -8; // default curry = (size().height / 2) -16; setBackground(Color.white); setFont(new Font("Helvetica",Font.BOLD,36)); } public boolean keyDown(Event evt, int key) { switch (key) { case Event.DOWN: if (currimg == test2) { currimg = getImage(getCodeBase(), "images/sleep1.gif"); } else { currimg = getImage(getCodeBase(), "images/stop.gif"); } break; case Event.UP: if (currimg == test1) { currimg = getImage(getCodeBase(), "images/awake.gif"); } else { currimg = getImage(getCodeBase(), "images/stop.gif"); } break; case Event.LEFT: if (flip > chg) { count = Math.random(); chg += 3; if (count < swit) { currimg = getImage(getCodeBase(), "images/left1.gif"); } else { currimg = getImage(getCodeBase(), "images/left2.gif"); } } else { flip+= 1; } currx -= 5; break; case Event.RIGHT: if (flip > chg) { count = Math.random(); chg += 3; if (count < swit) { currimg = getImage(getCodeBase(), "images/right1.gif"); } else { currimg = getImage(getCodeBase(), "images/right2.gif"); } } else { flip+= 1; } currx += 5; break; default: currimg = getImage(getCodeBase(), "images/stop.gif"); } repaint(); return true; } public void paint(Graphics g) { g.drawImage(currimg, currx, curry, this); } }
Et la page en "vieil" HTML :P :
<HTML> <HEAD> <META NAME="author" CONTENT="g10m"> <TITLE>My Game</TITLE> </HEAD> <BODY> <h1>Voici mon petit programme Java.</h1> <HR> <h2>Cliquez ci-dessous pour lancez l'applet puis appuyer sur une touche quelconque.</h2> <HR> <table border=2> <tr><td> <APPLET CODE="MyGame.class" WIDTH=800 HEIGHT=600> There would be an applet here if your browser supported Java. </APPLET> </tr></td> </table> </BODY> </HTML>
"The most successful method of programming is to begin a program as simply as possible, test it, and then add to the program until it performs the required job." -- PDP8 handbook, Pg 9-64
Hello,
Merci pour ta reponse mais j'ai toujours le même problème :(
j'ai crée ton applet sous eclipse, le fichier .class a été généré dans le bin de mon projet, j'ai crée ta page html dans ce même dossier (le bin) mais quand je lance la page j'ai un carré de l'applet et dedand j'ai : erreur: cliquez pour obtenir plus d'informations.
Bien sure je clique et j'ai cette erreur:
java.lang.NoClassDefFoundError: MyGame (wrong name: test1/MyGame)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Exception : java.lang.NoClassDefFoundError: MyGame (wrong name: test1/MyGame)
je ne comprend pas ce qui se passe, que dois-je faire pour que ça marche???
Merci
Merci pour ta reponse mais j'ai toujours le même problème :(
j'ai crée ton applet sous eclipse, le fichier .class a été généré dans le bin de mon projet, j'ai crée ta page html dans ce même dossier (le bin) mais quand je lance la page j'ai un carré de l'applet et dedand j'ai : erreur: cliquez pour obtenir plus d'informations.
Bien sure je clique et j'ai cette erreur:
java.lang.NoClassDefFoundError: MyGame (wrong name: test1/MyGame)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Exception : java.lang.NoClassDefFoundError: MyGame (wrong name: test1/MyGame)
je ne comprend pas ce qui se passe, que dois-je faire pour que ça marche???
Merci
Chouette que tu ai résolu ton problème et bonne continuation ;)