Mes applet ne fonctionnent pas avec la Microsoft Virtual Machine - Java - Programmation
Marsh Posté le 13-05-2005 à 22:05:49
Chez moi (Firefox + JRE 1.4), ça merde. La console Java me donne:
|
Marsh Posté le 13-05-2005 à 22:14:06
Je peux avoir les références de la musique
Marsh Posté le 13-05-2005 à 22:19:10
elianor a écrit : Je peux avoir les références de la musique |
pas encore écouté mais je dirais :
musique de Mike Oldfield And Maggie Reilly - Moonlight Shadow
(la musique de la chaine quoi )
edit : en fait nan, c'est la danse du poisson, il me semble que ca vient de l'emmission octopuce et reprise il y a peu dans bien-être, pour plus d'info le topic direct8 sur bla²
Marsh Posté le 13-05-2005 à 22:28:51
Nan, c'est la danse du poisson.
Avec Firefox 1.04 + JRE 1.4, ça merde. Mais avec le JRE 1.5 update 3, ça marche.
Marsh Posté le 13-05-2005 à 22:32:32
et merde, j'ai baffé Célia
Marsh Posté le 13-05-2005 à 22:53:25
Ca sens un autoboxing mal maitrisé tout ça
Tu peux nous faire pêter le source
Marsh Posté le 13-05-2005 à 23:00:06
elianor a écrit : Ca sens un autoboxing mal maitrisé tout ça |
Oui je pense aussi car j'avoue avoir du mal à jongler entre les int et les Integer.
Ca marche bien avec JRE 1.5.* mais avec des versions plus anciennes j'ai souvent besoin de faire des retouches.
Voici la petite classe qui génère l'exception mentionnée ci-dessus.
Code :
|
EDIT : Merde j'ai oublié de mettre ma méthode getInt en public !!! Si ça se trouve c'est ça le bug.
EDIT 2 : Ah bah non l'erreur est à la ligne 18, pas 21... Mais ça ne fera pas de mal que je la passe en public.
Marsh Posté le 13-05-2005 à 23:03:31
Au lieu de :
Integer.valueOf(niveau).toString()
Met plutot :
Integer.toString (niveau)
Marsh Posté le 13-05-2005 à 23:06:12
Ah ! Merci ! Je ne savais pas qu'on pouvait faire comme ça.
Maintenant, as-tu une idée de pourquoi la zone de mon applet reste déespérément grise quand j'utilise la MS VM au lieu de la JVM de Sun ?
Marsh Posté le 14-05-2005 à 09:56:07
Bah tu as l'air d'utiliser du Swing. Et Swing, ça va pas trop passer avec IE.
Marsh Posté le 14-05-2005 à 11:00:10
C'est marrant, c'est la réflexion que je me suis faite en me réveillant ce matin.
Et je le remplace pas quoi ? AWT ?
Marsh Posté le 14-05-2005 à 11:30:35
OK, j'vais voir ça... En espérant que j'aurai juste quelques "J" à virer...
EDIT : eh merde ! Pas de classes Timer ni BoxLayout...
Marsh Posté le 14-05-2005 à 11:55:53
Tu viens de découvrir pourquoi 99% des jeux pour le web sont en Flash de nos jours.
Marsh Posté le 14-05-2005 à 12:08:18
Ouaip.
Mais bon, j'ai appris Java il y a 2 mois. Donc ma prochaine mission, c'est d'apprendre Flash.
Marsh Posté le 14-05-2005 à 12:19:50
Ah nan, la mode de nos jours c'est de tout faire en HTML/CSS+Javascript. Comme le remake de Lemmings:
http://193.151.73.87/games/lemmings/
Marsh Posté le 14-05-2005 à 12:41:20
Chuis impressionné ! Je pensais pas qu'on pouvait faire tout ça en JavaScript.
Marsh Posté le 14-05-2005 à 13:16:51
'tain
on croirait la version amiga
Marsh Posté le 14-05-2005 à 14:31:19
Rhâââ mais c'est trop dur de se passer de swing !
1°) Comment avoir une classe comme javax.swing.Timer ?
2°) Pourquoi mon Panel (anciennement JPanel) dans lequel je dessine le jeu se met à clignotter comme un fou ?
J'avais redéfini la méthode paint() pour simplement afficher une Image que je dessine en mémoire avant d'appeler repaint(). Il devrait redessiner l'image par dessus la précedente. Je ne comprends pas pourquoi il dessine un flash blanc avant de redessiner l'image.
Voici ma méthode paint :
Code :
|
Marsh Posté le 14-05-2005 à 14:34:06
Bon, pour mon problème 2, j'ai réussi à le corriger en faisant simplement appel à :
paint(getGraphics());
au lieu de :
repaint();
Je ne sais pas si c'est comme ça qu'il fallait faire mais au moins ça marche...
Donc il ne me reste plus qu'à trouver un Timer compatible MS VM...
EDIT : Il semble que je vais devoir me pencher sur java.util.Timer mais il a l'air plus compliqué.
Marsh Posté le 14-05-2005 à 16:45:32
Ca y est, j'ai réussi à complètement me passer de swing !
Mais lorsque j'exécute mon applet avec a MS VM, ça me dit que ça ne connait pas la classe BufferedImage.
C'est à se demander à quoi sert l'option "-target 1.1".
Alors que puis-je utiliser comme classe pour représenter une image (RGB 24 bits) en mémoire dont je donne les dimensions (constantes entières) à l'instanciation et pas en chargeant une image dedans (car je ne veux pas charger d'image dedans mais dessiner dedans à partir de son Graphics) ?
EDIT : avec MemoryImageSource ? Qu'est-ce qui me garantit que ça va pas être incompatible aussi ?
Marsh Posté le 14-05-2005 à 17:43:50
Bon ça c'est réglé avec tout simplement image = createImage(new Dimensions(x,y));
Et maintenant ce sont les méthodes setPreferedSize, setMinimumSize et setMaximumSize qui n'existent pas pour mes Panel en version 1.1.
Et bien sûr setSize ne semble rien faire.
Marsh Posté le 14-05-2005 à 20:27:45
Rhââââââ !
J'ai enfin autre chose qu'un rectangle gris et j'ai réussi à dimensionner et placer mes composants là où il faut... MAIS...
J'ai remplacé javax.swing.Timer par java.util.Timer et java.util.TimerTask et maintenant, quand je veux lancer le jeu, ça me dit que ça ne connait pas la classe java.util.TimerTask !
Mais comment on fait un timer avec cette putain de MS VM préhistorique ???
Marsh Posté le 14-05-2005 à 22:02:08
putain, mais t'attends quoi pour télécharger la VM de Sun bordayl ?
Marsh Posté le 14-05-2005 à 22:05:27
A mon avi le probleme c'est pas lui, c'est les visiteurs potentiels de son site
Marsh Posté le 14-05-2005 à 22:07:43
ouais enfin bon, il a qu'à mettre sur son site qu'il faut télécharger la VM de Sun, avec le lien qui va bien...
ça va bien 5 mn les softs qui utilisent des SDK antédiluviens hein
Marsh Posté le 14-05-2005 à 22:08:28
Harkonnen a écrit : putain, mais t'attends quoi pour télécharger la VM de Sun bordayl ? |
stfu u moron. Il le fait pour que les boulays qui continuent à n'utiliser que IE sans avoir le JRE d'installé puisse l'utiliser.
Spece de noob.
Marsh Posté le 14-05-2005 à 22:12:32
Lam's a écrit : stfu u moron. Il le fait pour que les boulays qui continuent à n'utiliser que IE sans avoir le JRE d'installé puisse l'utiliser. |
cf ma réponse plus haut
il a qu'à mettre le lien vers la JVM de Sun sur son site, après tout j'oblige bien les gens à dl le framework .NET avec mon plugin moi
ceux qui veulent pas le faire, et bien ils ont qu'à aller voir ailleurs
Marsh Posté le 14-05-2005 à 22:38:32
Oui mais d'un coté, merci l'accessibilité ...
je suis d'accord avec vous sur le fait que la vm de MS est un scandale, mais il ne faut non plus pas oublier que pas tout le monde a un adsl et peut se permettre de telecharger un package qui fait plusieurs dizaines de Mo
Marsh Posté le 14-05-2005 à 22:53:25
Exactement.
Evidemment que chez moi j'ai la dernière version du JDK+JRE.
Mais je veux pas forcer les gens à installer un truc 15 Mo qui en bouffe presque 60 une fois installé.
Et puis s'ils sont au boulot et que leur administrateur veut pas leur installer une nouvelle machine Java...
Et puis il y a encore des sites (genre la section de jeu en ligne de fdjeux.com) qui refusent tout simplement de se lancer si t'as pas la MS VM.
Mais je précise quand même actuellement sur ma page le lien pour la JVM de Sun.
Marsh Posté le 13-05-2005 à 20:38:02
Bonjour,
J'ai fait un petit jeu en applet Java (à partir du JDK de J2SE 1.5.0_3) que vous pouvez voir ici : http://xmxmxm.perso.cegetel.net/francky
J'aurais voulu le rendre compatible avec la Microsoft VM afin qu'un maximum de gens puisse y jouer mais je ne sais pas comment faire.
En fait la moindre applet (genre Hello World) que je compile ne marche pas.
Quelle target faut-il choisir ?
J'ai rendu mon jeu compatible Java 1.1 en le compilant avec la commande ci-dessous mais ça ne suffit pas.
javac *.java -source 1.2 -target 1.1
Message édité par xman le 13-05-2005 à 20:40:19
---------------
Bon, puisque presque tout le monde a une signature, ben moi aussi ! Na !