Discussion:Programmation Java/Générer un triangle de Sierpiński

Dernier commentaire : il y a 12 ans par DavidL dans le sujet Bug
Auteurs crédités après scissionlink={{{link}}}

Tout ou partie de cet article est issu de la scission de l'article « Transwiki:Triangle de Sierpiński (programme informatique) » sous licence GFDL qui a depuis évolué indépendamment. Consultez l'historique de la page originale avant le 31 décembre 2008 pour connaître la liste de ses auteurs.

Bug

modifier

J'ai bien respecté la procédure mais Firefox plante systématiquement, serveur Apache ou pas. En exécutant le .class j'ai : Erreur : la méthode principale est introuvable dans la classe SierpinskiTriangle, définissez la méthode principale comme suit : public static void main(String[] args). JackPotte ($) 24 mars 2012 à 18:31 (CET)Répondre

J'ai testé, (copié-collé des fichiers) : ça fonctionne parfaitement.
(Firefox 11, Windows 7 64 bits, JDK 1.6.0_24 64-bits, Plugin Java 1.6.0_26)
  • Quelle config as-tu ?
  • Peut-être faut-il mettre à jour le plugin Java de Firefox ? il faut que le numéro de version (maj.min) du plug-in Firefox soit supérieur ou égal à celui de la version du compilateur.
Si tu veux tester sans Firefox, tu dois utliser appletviewer :
appletviewer SierpinskiTriangle.html
-- ◄ David L • discuter ► 24 mars 2012 à 18:42 (CET)Répondre
Cette commande fonctionne merci ! JackPotte ($) 24 mars 2012 à 18:52 (CET)Répondre
J'ai Firefox 11, Windows 7 64 bits, Plugin Java 1.6.0_31, et :
>java -version
java version "1.7.0_01"
Java(TM) SE Runtime Environment (build 1.7.0_01-b08)
Java HotSpot(TM) 64-Bit Server VM (build 21.1-b02, mixed mode)

Pendant un des dix plantages m'obligeant à killer Firefox, j'ai eu le temps de cliquer pour afficher les détails du problème :

Java Plug-in 1.6.0_31
Utilisation de la version JRE 1.6.0_31-b05 Java HotSpot(TM) Client VM
java.lang.UnsupportedClassVersionError: SierpinskiTriangle : Unsupported major.minor version 51.0
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(Unknown Source)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)
	at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
	at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
	at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
	at sun.plugin2.applet.Plugin2ClassLoader.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.UnsupportedClassVersionError: SierpinskiTriangle : Unsupported major.minor version 51.0

JackPotte ($) 24 mars 2012 à 19:09 (CET)Répondre

Pour résoudre le problème, tu peux :
  • installer le plug-in Java 1.7 pour Firefox (si tu le trouves),
  • ou installer JDK 1.6,
  • ou compiler avec l'option : -target 1.6
-- ◄ David L • discuter ► 24 mars 2012 à 20:15 (CET)Répondre
J'ai eu le même problème avec -target 1.6, et le plugin 1.7 n'existe pas (ni sur Google, ni quand je vérifie si le 1.6 est à jour). Sinon j'ai déjà le JDK 1.7, mais il doit entrer en conflit avec JRE 1.7 je suppose. JackPotte ($) 25 mars 2012 à 11:41 (CEST)Répondre
J'ai supprimé JRE et JDK, téléchargé la dernière version de ce dernier, recompilé, maintenant SierpinskiTriangle.html ne plante plus Firefox ! Mais j'ai un cadre noir à la place du dessin, et appletviewer me rend la main sans action... JackPotte ($) 25 mars 2012 à 12:09 (CEST)Répondre
Essayes de compiler avec les options suivantes:
-source 1.6 -target 1.6
Pour appletviewer, il faut spécifier le chemin du fichier HTML, pas celui du .class/.java.
-- ◄ David L • discuter ► 25 mars 2012 à 12:40 (CEST)Répondre
Bien vu pour appletviewer, il a toujours marché. Par contre compiler en -source 1.6 -target 1.6 et lancer le .html me refait planter Firefox. Cette compilation révèle : warning: [options] bootstrap class path not set in conjunction with -source 1.6, 1 warning. JackPotte ($) 25 mars 2012 à 13:02 (CEST)Répondre
Pour appletviewer, j'avais eu le même problème hier lors de mon test.
Apparemment, il faudrait utiliser -bootclasspath pour le faire pointer vers des classes de Java 1.6.
Dans ce cas, il vaudrait mieux que tu installes et utilises directement une version 1.6 du JDK.
-- ◄ David L • discuter ► 25 mars 2012 à 13:14 (CEST)Répondre
Revenir à la page « Programmation Java/Générer un triangle de Sierpiński ».