Hé tout le monde, je fais mon premier applet pour Java aujourd'hui. J'utilise un sous-domaine sur un serveur et je ne sais pas quoi faire parce que je reçois cette erreur vraiment étrange. P>
J'ai mon pot dans le serveur et tout sauf chaque fois que j'essaie de charger l'applet, cela se produit. P>
java.lang.classformatRorRor: valeur magique incompatible 218774561 dans l'évolution du fichier de classe / EvolutionApplet P> blockQuote>
Lors de la recherche, il semble qu'une valeur magique incompatible signifie que quelque chose a été corrompu dans le .jar p>
Voici le site Web http://demeedgames.site88.net/main.html Le nom de pots est Evolution si vous avez besoin du code HTML, il est sur le site Web. P>
Edit: L'applet doit être lancé à partir d'Evolution.EvolutionApplet Not Evolution.Evolution P>
3 Réponses :
Le Valeur magique d'une classe Java valide est 0xcafebabe Code>, qui est la valeur hexagonale de
3405691582 code>. Ceci est représenté par les 4 premiers octets du fichier. Mais vous obtenez
218774561 code> qui signifie que les caractères ASCII correspondent
Cr code>,
lf code>,
et
! code> (le CRLF est une nouvelle ligne). Pour le voir vous-même, exécutez cette pièce de code:
int magic = 218774561;
ByteBuffer b = ByteBuffer.allocate(4);
b.putInt(magic);
System.out.println(new String(b.array()));
Balusc ci-dessus l'a vraiment expliqué. En plus de cela, vous pouvez vérifier ce lien thread: valeur magique incompatible 218774561 Erreur dans l'applet P>
Il semble que le codeBase et / ou l'attribut de code de votre étiquette de l'applet doivent être signalés correctement. P>
Le problème d'origine semble fixé maintenant. Je pourrais télécharger le pot à partir de http://demeedgames.site88.net/evolution.jar < H2> Mettre à jour H2>
Il semble que la classe produit un cadre (avec un look très "rétro")! En tant que telle, oubliez ce non-sens de l'applet et Lancez le cadre d'un lien avec Java Web Démarrer . strong> p> otoh il jette maintenant un Il y a deux modifications au code evolution.evolution code> n'est pas une applet! L'exécution de la ligne de commande à l'aide de: p>
Anciene réponse h2>
classnotfoundException code> que (après avoir inspecté le pot) me fait penser qu'il devrait être: p>
code code> à noter. p>
.Class code> a été supprimée. Une matière mineure, l'ajout de celle-ci est tolérée, mais pas correcte. Li>
code> supprimé du nom de la classe. LI>
ol> p>
Comment créez-vous votre pot?
Grande question. Affiche l'effort de recherche et des liens vers un exemple défaillant.