Utilisation de Java dans TXM

Objectif

Depuis TXM 0.7.7, les setups embarquent un JRE. Les versions des JRE embarqués en fonction des différents OS sont les suivantes :

  • Windows 32bit : 1.7.0_75-b13 (Oracle)
  • Windows 64bit : 1.7.0_75-b13 (Oracle)
  • Linux 32bit : 1.7.0_75-b13 (Oracle)
  • Linux 64bit : 1.7.0_75-b13 (Oracle)
  • Mac OS X 64bit >= 10.7 : 1.6.0_65-b14-466.1-11M4609 (Apple)
  • Mac OS X 64bit 10.6 : l'installation et l'exécution de TXM utilisent le JRE installé sur le système. (TXM ne peut donc être installé ou lancé sans JRE système)

Il est conseillé aux développeurs de TXM d'utiliser le JRE dédié à sa configuration dans les projets Eclipse afin de développer dans le même environnement que la cible finale. Ces JRE sont téléchargeables sur le SMB à:

Voir également la page : passage de Java 6 à Java 7

Lancement de la RCP en utilisant le JRE embarqué

Comportement sous Windows et Linux

  • TXM est lancé en utilisant le native launcher d'Eclipse et en lui passant le lien vers le JRE embarqué à utiliser

Comportement sous Mac OS X

  • sous Mac OS X, nous n'arrivons pas à passer correctement le JRE embarqué au native launcher Eclipse, le lancement de TXM ne se fait donc plus en utilisant le native launcher d'Eclipse sous >= 10.7
  • un test est fait au démarrage pour déterminer la version de OS X cliente
    • s'il s'agit de Mac OS X 10.6 ⇒ TXM est lancé en utilisant le native launcher d'Eclipse qui utilise lui-même la version de Java dans le PATH du système
    • s'il s'agit de Mac OS X >= 10.7 ⇒ TXM est lancé en utilisant le JRE embarqué et en lui passant le .jar du launcher d'Eclipse (non natif donc)

De plus ne plus passer par le native launcher corrige le bug OS X de menu de TXM qui était en arrière plan au lancement et le bug des 2 icônes affichées dans la dock bar.

TODO SJ: We need to clarify this issue, to list the exact JRE versions used for OS, to store these JRE somewhere. We also need to write somewhere (setup dialogs + minimum requirements Web pages?) that TXM now won't need anymore an installed JRE except for Mac OS 10.6. Also need to clearly explain how is ran the native launcher or .jar launcher according to the OS X versions. Write here the command lines used for each OS.

Recette

Retour

Failed to create the Java Virtual Machine

Hypothèses :

  • A) une option de lancement provoque ce comportement. Comme les options suivantes :
    • arch : si arch=x86_32 et que JVM est un binaire 64bit → kaboom
    • Xms, Xmx, XX:MaxPermSize…
  • B) TXM n'arrive pas à lire le fichier contenant les options de lancement, il utilise un autre fichier dont les options provoque le cas A
  • C) Le launcher de TXM lance une autre JVM que celle embédée
    • soit la dll n'est pas exécutable
    • soit la dll n'est pas compatible avec les options données par le launcher
  • D) la ligne de commande d'appel de TXM est fausse
public/jre_embedding.txt · Dernière modification: 2017/05/10 12:07 par matthieu.decorde@ens-lyon.fr