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

Un livre de Wikilivres.
Sauter à la navigation Sauter à la recherche
Auteurs crédités après scission
link={{{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 le wikicode]

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)

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)
Cette commande fonctionne merci ! JackPotte ($) 24 mars 2012 à 18:52 (CET)
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)

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)
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)
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)
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)
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)
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)