Skip to main content

Installation de Java

Ancestris est compatible avec les versions Java 8 à Java 18.

Si Ancestris ne démarre pas, ou affiche l'écran de démarrage d'Ancestris et puis s'arrête, c'est généralement lié à un problème avec l'installation de Java. Soit Java n'est pas installé, soit Ancestris ne le trouve pas ou trouve une version incompatible ou trouve une version détériorée.

Les sections suivantes proposent une méthode étape par étape pour s'assurer qu'Ancestris utilise une version Java 8 valide.

 

Principe général

  • Vous avez besoin d'un Java Runtime Environnement (JRE). Le JDK (Java Development Kit) n'est pas requis, mais comme le JDK inclut un JRE, un JDK seul est également suffisant.
  • Ancestris fonctionne avec les versions 8 à 18 de Java. Il est compilé en version 8 pour une meilleure compatibilité avec le plus grand nombre. Il a été testé et fonctionne sur Java 8, 11 et 17, qui sont des versions LTS (Long Term Support). Nous ne vérifions pas sur les versions Short Term qui sont obsolètes et non téléchargeables après 18 mois mais des utilisateurs nous indiquent qu'Ancestris fonctionne aussi en version Java 18.
  • Vous pouvez installer un JRE de n'importe quel fournisseur : Oracle, OpenJdk ou Adoptium.
  • Si vous optez pour une distribution gratuite, il faudra indiquer à Ancestris où est votre installation. Dans ce cas, comme indiqué plus bas, dé-commentez la ligne jdkhome du fichier de configuration ancestis.conf situé dans le répertoire "etc" de votre installation d'Ancestris et mettez le chemin adéquat.

 

Savoir quelle est la version par défaut de Java

Si vous ne savez pas si Java est installé sur votre ordinateur, ou bien quelle version est installée, veuillez visiter la page officielle d'explication détaillée ou sinon ouvrez un terminal et tapez la commande ci-dessous.

java -version

Il y a deux méthodes alternatives sur MacOS et Windows.
   - pour MacOS, consultez les instructions pas à pas.
   - pour Window, consultez les instructions pas à pas.

 

  • Si vous voyez un message d'erreur dans le terminal, c'est que Java n'est pas installé sur votre système. Ancestris ne peut pas fonctionner dans ce cas. Veuillez suivre la section Installer ci-dessous pour installer Java 1.8, puis démarrez Ancestris.

 

  • Si vous voyez les lignes suivantes, cela signifie que vous avez la bonne version de java et que c'est celle utilisée par défaut.
java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)

D'après l'affichage ci-dessus, vous pouvez voir que la version installée et positionnée par défaut est la version 1.8, i.e. version 8.

Si Ancestris ne démarre pas, c'est donc soit que Ancestris ne trouve pas Java ou alors trouve une version incompatible ou trouve une version détériorée. veuillez suivre les instruction d'identification de la version trouvée par Ancestris pour résoudre le problème.

 

  • Si vous voyez une version Java différente de 1.8 ou 11, cela signifie que vous avez une autre version Java définie par défaut.
java version "10.0.1" 2018-04-17
Java(TM) SE Runtime Environment 18.3 (build 10.0.1+10)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.1+10, mixed mode)

D'après l'affichage ci-dessus, nous pouvons voir que la version Java installée définie par défaut est la version 10. Ancestris ne fonctionnera pas. Veuillez suivre la section Installer ci-dessous pour installer Java 8.

Une fois cela fait, vous aurez alors plusieurs versions Java installées sur votre système.

Si vous êtes à l'aise pour définir Java 8 comme version par défaut, veuillez suivre les instructions pour définir la version Java par défaut sur votre système, puis démarrez Ancestris.

Si vous préférez conserver la version Java définie sans y toucher, vous devez indiquer à Ancestris de ne pas utiliser la version Java par défaut et d'en utiliser une autre. Veuillez suivre les instructions pour forcer Ancestris à utiliser une version Java spécifique, puis démarrez Ancestris.

 

Identifier la version de Java utilisée par Ancestris

Pour savoir quelle version Java Ancestris utilise, vous devez vérifier le fichier de configuration Ancestris.

1. Repérez la ligne qui définit default_options

Cette ligne ressemble à ceci:

default_options="--branding ancestris -J-Xms96m -J-Xmx1g --laf javax.swing.plaf.nimbus.NimbusLookAndFeel"

Si l'une des options inclut --jdkhome="/chemin/vers/java, assurez-vous que le chemin indiqué dans cette définition est celui de la version java 8. Sinon, éditez ce fichier et changez la ligne. Ensuite lancez Ancestris.

Si elle n'inclut pas l'option en question, passez à l'option ci-dessous.

2. Repérez la ligne qui définit jdkhome

Si cette ligne existe, elle doit ressembler à jdkhome="/chemin/vers/java". Assurez-vous , que le chemin indiqué dans cette définition est celui de la version java 8. Sinon, éditez ce fichier et changez la ligne. Ensuite lancez Ancestris.

Si la ligne début par "#", ou si la ligne n'existe pas, cela veut dire qu'Ancestris l'ignore et par conséquent, c'est la version par défaut de Java qu'Ancestris utilisera.

Si la version par défaut vérifiée plus haut est la version 8, et qu'Ancestris ne se lance toujours pas, c'est que la version installée pose problème ou est défectueuse. Essayez alors de réinstaller Java et relancez Ancestris.

 


Installation de Java

Pour installer Java 8 sur votre ordinateur, vous pouvez l'obtenir depuis la page principale Java d'Oracle, ou plus précisément:
- Version d'utilisation simple: sur la page de téléchargement du JRE (MacOS, Windows, Linux)
- Version de développment: sur la page de téléchargement du JDK (MacOS, Windows, Linux)

Une façon simple de récupérer une version de java est aussi possible à partir de Adoptium.net

 

 

  • Si vous préférez une version de Java en Open Source, il est possible d'utiliser OpenJDK et vous pouvez aussi installer Java depuis la solution libre Adoptium.

 

 

Définir la version par défaut de Java

La procédure dépend de votre système d'exploitation.


Quel que soit votre système d'exploitation, vous pouvez identifier quelle version de java est activée par défaut sur votre système en tapant en ligne de commande

java -version

Quel que soit votre système d'exploitation, si la version de java à utiliser pour Ancestris est différente de celle activée par défaut sur votre système, il faut modifier le fichier de configuration d'Ancestris comme suit en dé-commentant la ligne ci-dessous et en spécifiant le chemin vers java.

jdkhome="/chemin/vers/jdk"

 

Définir la version par défaut sur MacOS

La version de Java définie par défaut sur votre ordinateur peut être incompatible avec Ancestris. Cela ne fonctionnera donc pas.

Si vous souhaitez conserver plusieurs versions de Java en même temps, et définir par défaut la version 8 par exemple, vous devrez alors échanger les versions.

Pour cela, ouvrez un terminal et suivez les instructions ci-dessous.

Dans l'exemple suivant, les instructions permettent de définir la version 8 comme version par défaut tout en gardant la version 10 sur votre ordinateur.

1/6 - Vérifiez quelle version de java est utilisée par défaut

java -version

macos_java-vers10.jpg

On voit que la version 10 est celle définie par défaut. Il faut la version 1.8 (i.e. 8) ou 11 pour Ancestris.

2/6 - Vérifiez quelles versions de java sont installées et regardez si la version 1.8 ou 11 est bien parmi elles

/usr/libexec/java_home -V

macos_java-versused.jpg

On voit que les versions 10 et 1.8 sont les deux versions installées.

Si ce n'était pas le cas, il vous faudrait installer la version 8 selon les instructions ci-dessus.

3/6 - Ajoutez les paramètres qui définissent par défaut la version de java 1.8 dans votre profil

echo 'export JAVA_HOME=`/usr/libexec/java_home -v 1.8`' >>~/.bash_profile
echo 'export jdkhome=`/usr/libexec/java_home -v 1.8`' >>~/.bash_profile

La première ligne définit la version de java à utiliser pour les commandes dans la console (JAVA_HOME, en majuscule).

La seconde définit la version de java à utiliser pour Ancestris (jdkhome, en minuscule).

Ici, on définit la version 1.8 pour les deux utilisations (console et Ancestris).

4/6 - Fermez le terminal

Exit

5/6 - Ouvrez de nouveau le terminal et vérifiez que la version utilisée a bien changé

java version

macos_java-vers8.jpg

OK, c'est bon. On voit que la version 1.8 est utilisée.

6/6 - Redémarrer Ancestris dans un terminal

Quand Ancestris démarre dans un terminal , vous pouvez voir la barre de titre de la fenêtre qui indique la version de Java utilisée par Ancestris.

 

Définir la version par défaut sur Windows

Il vous faut créer un fichier BAT par version de Java que vous voulez conserver.

Vous devez créer les fichiers ci-dessous avec votre éditeur préféré et les placer dans un répertoire accessible depuis votre PATH.

JAVA8.BAT

@echo off
echo Setting JAVA_HOME
set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_12
echo setting PATH
set PATH=C:\Program Files\Java\jdk1.8.0_12\bin;%PATH%
echo Display java version
java -version

JAVA10.BAT

@echo off
echo Setting JAVA_HOME
set JAVA_HOME=C:\Program Files\Java\jdk1.10.0_11
echo setting PATH
set PATH=C:\Program Files\Java\jdk1.10.0_11\bin;%PATH%
echo Display java version
java -version

 En écrivant ces fichiers, assurez-vous de spécifier les bons noms de fichiers java pour les lignes JAVA_HOME ci-dessus, selon votre installation de java.

Quand vous voudrez alterner de version Java, il vous suffira de lancer le fichier BAT correspondant : JAVA8 pour la version 1.8, ou JAVA10 pour la version 10. La version de java en vigueur s'affichera dans la console.

Pour vérifier que l'alternance a bien été prise en compte, vérifiez vous-même votre version de java en tapant java -version dans une console ou en vérifiant sur cette page.

Si vous voulez garder votre dernière version de Java et forcer l'utilisation d'une autre version 8 Ancestris, il faudra modifier le fichier de configuration en modifiant la ligne #jdkhome="C:\chemin\vers\jdk"

 

 

 

Définir la version par défaut sur Linux

Tapez la commande suivante en console :

sudo update-alternatives --config java

linux-java-versions.jpg

Sélectionnez dans la liste qui s'affiche la version que vous souhaitez.

Si vous voulez garder votre dernière version de Java et forcer l'utilisation d'une autre version de java pour Ancestris, il faudra modifier le fichier de configuration en modifiant la ligne #jdkhome="/chemin/vers/jdk"

Pour connaître toutes les commandes de cet utilitaire

sudo update-alternatives -l

 

 

Forcer Ancestris à utiliser une version Java spécifique

Quel que soit votre système d'exploitation, si la version Java active par défaut est différente de celle à utiliser avec Ancestris, vous devez modifier le fichier de configuration d'Ancestris d'origine comme ce qui suit en dé-commentant la ligne ci-dessous et en spécifiant le chemin vers java.

jdkhome="/chemin/vers/java"
Cas de Windows et Linux

Pour Windows ou Linux par exemple, si l'exécutable java est /usr/java/jdk1.8.0_291-amd64/bin/java, alors vous devez indiquer

jdkhome="/usr/java/jdk1.8.0_291-amd64/"

Note: vous devez exclure /bin/java de la description du chemin.

Cas de MacOS

Pour MacOS, si par exemple Java 18 et Java 17 sont installés sur votre Mac et que vous souhaitez forcer l'utilisation de Java 17 pour Ancestris, la manipulation complète pour forcer la version de Java serait la suivante :

  • Editez le fichier de configuration d'Ancestris de l'application
    /Applications/Ancestris.app/Contents/Resources/ancestris/etc/ancestris.conf
  • Repérez la ligne #jdkhome="/chemin/vers/java" et supprimer le caractère # du début de ligne pour dé-commenter cette ligne et pour qu'Ancestris en tienne compte.
  • Remplacer la par, en supposant que témurin 17 soit la version de java à forcer :
jdkhome="/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home"
  • Sauvegardez le fichier ancestris.conf ainsi modifié et vérifiez qu'il s'est bien sauvegardé.
  • Relancez Ancestris.
Points d'attention quelque soit votre système d'exploitation

Attention 1 : Si le répertoire java n'existe pas, en l'occurrence temurin-17.jdk dans l'exemple précédent, alors Ancestris ne se lancera pas car il ne trouvera pas Java.

Attention 2 : Si la ligne jdkhome est également définie dans le fichier configuration personnalisé d'Ancestris, sa valeur sera prioritaire sur celle du fichier configuration de l'application. Voir la page fichier de configuration d'Ancestris correspondante.