lossehelin
Messages postés51Date d'inscriptionjeudi 10 mai 2012StatutMembreDernière intervention 5 juillet 2012
-
26 juin 2012 à 16:49
lossehelin
Messages postés51Date d'inscriptionjeudi 10 mai 2012StatutMembreDernière intervention 5 juillet 2012
-
28 juin 2012 à 16:42
Bonjour !
Je suis actuellement en train d'effectuer un stage de fin de deuxième année de DUT Informatique.
J'arrive à la fin de mon stage, le déploiement de l'application s'est bien déroulée.
La version 32bits sur les postes 32bits, et la version 64bits, sur les 64bits.
J'avais pris la peine de faire deux versions, puisque les postes 64bits ne voulaient pas exécuter l'application compilée avec un JDK 32 bits, et il était hors de question dans l'entreprise d'installer le JRE 32 bits sur les postes 64 bits.
Bref, aujourd'hui, par erreur je double clique sur la version 64bits depuis mon poste 32bits ... et là, miracle, tout fonctionne comme si j'avais lancé la version 32 bits.
J'ai quitté, relancé la version 64bits pour vérifier que j'n'avais pas mal vu, et non, tout fonctionne ...
Alors, j'aimerai comprendre, pourquoi un JRE64bits ne peut pas exécuter un java compilé avec un JDK32bits, et pourquoi mon JRE32bits, sur une machine 32bits, peut exécuter un java compilé avec un JDK64bits ...
Dans l'absolu, ça ne me dérange pas, mais, je ne supporte pas de ne pas comprendre.
Je précise que ma machine est "Compatible 64 bits", mais qu'un Windows 32bits est installé dessus.
lossehelin
Messages postés51Date d'inscriptionjeudi 10 mai 2012StatutMembreDernière intervention 5 juillet 2012 28 juin 2012 à 16:42
Après plusieurs essai, le 64 exécute aussi le 32 ...
Très honnêtement, je n'y comprends plus rien !
Au début de mon stage, pendant une semaine, impossible d'exécuter cette version 32bits sur les machines 64 avec Java 64, et là, maintenant, ça fonctionne ...
Je crois que je vais pas chercher à comprendre, c'est la magie de l'informatique ... x)
cormandyr
Messages postés600Date d'inscriptionsamedi 20 mai 2006StatutMembreDernière intervention 8 juillet 201611 27 juin 2012 à 07:58
Salut,
Personnellement, pour moi, un fichier .class peut être exécuter sur n'importe quelle plateforme, c'est la JVM qui va interpreter le code... pas besoin de faire un compilation 64bit et une 32....
lossehelin
Messages postés51Date d'inscriptionjeudi 10 mai 2012StatutMembreDernière intervention 5 juillet 2012 27 juin 2012 à 08:42
Et bien pour le fait qu'un fichier class peut être exécuté par les deux versions de la JVM, dans le sens la 64 exécute la 32, ça ne fonctionne pas (ce qui est plutôt étonnant, je trouve ...), mais sur mon poste, dans l'autre sens, la 32 exécute la 64, ça fonctionne ... Ce qui est beaucoup, beaucoup plus étonnant !
J'ai essayé de regarder sur internet, mais je ne trouve pas grand chose !
J'aurai voulu contacter Oracle/Sun pour leur poser directement la question, mais je n'ai pas trouvé comment les contacter pour ce genre de question :/
cs_jojolemariole
Messages postés519Date d'inscriptionmercredi 21 mars 2007StatutMembreDernière intervention19 décembre 201625 27 juin 2012 à 10:27
À mon avis la JVM 64 devrait exécuter sans problème ton application compilée par le JDK 32, peut-être utilises-tu des librairies natives ?
Quel est le message d'erreur que te renvoies java ?