Problème démarrage HotReload Nuxeo : Différence entre versions
m |
(Aucune différence)
|
Version actuelle en date du 21 juin 2019 à 10:57
Suite à une installation locale de Nuxeo
et nue mulittude de redéploiement de l'instance, après modification dans le Studio, il se peut que le démarrage / otreload ne fonctionne plus.
Cet article présente un correctif sur l'installation de base qui a permis de ne plus avoir de problème de démarrage.
Votre avis
Nobody voted on this yet
|
|
Etude
Suite aux multiples redéploiements, les modifications faites dans le Studio n'étaient pas visibles et l'application ne démarrait plus. Avec la console activée, il est constaté un message d'erreur lors du démarrage, fichier console.log
.
En ouvrant ce fichier dans un éditeur de texte, le message donne un peu plus d'information.
ERROR [NuxeoLauncherGUITask-7] [org.nuxeo.launcher.NuxeoLauncher] Server start failed with command: ["c:\Apps\Nuxeo\10.10\3rdparty\java\jre\bin\java", "-Xms512m", "-Xmx1024m", "-Dfile.encoding=UTF-8", "-Dmail.mime.decodeparameters=true", "-Dnet.sf.ehcache.skipUpdateCheck=true", "-Djava.util.Arrays.useLegacyMergeSort=true", "-Dsun.net.http.retryPost=false", "-cp", ".;c:\Apps\Nuxeo\10.10\nxserver\lib;c:\Apps\Nuxeo\10.10\bin\bootstrap.jar;c:\Apps\Nuxeo\10.10\bin\tomcat-juli.jar", "-Dnuxeo.home=c:\Apps\Nuxeo\10.10", "-Dnuxeo.conf=C:\ProgramData\Nuxeo\conf\nuxeo.conf", "-Dnuxeo.log.dir=C:/ProgramData/Nuxeo/logs", "-Dnuxeo.data.dir=C:/ProgramData/Nuxeo/data", "-Dnuxeo.tmp.dir=C:/ProgramData/Nuxeo/tmp", "-Dnuxeo.mp.dir=c:\Apps\Nuxeo\10.10\packages", "-Djava.io.tmpdir=C:/ProgramData/Nuxeo/tmp", "-Dcatalina.base=c:\Apps\Nuxeo\10.10", "-Dcatalina.home=c:\Apps\Nuxeo\10.10", "org.apache.catalina.startup.Bootstrap", "start"]
Dans le cadre de cet article, l'instance est installée sous c:\Apps\Nuxeo\10.10
.
Toutefois, le message ne donne pas d'informations utiles. En démarrant l'instance sans la console, la trace d'exécution est la suivante.
nuxeoctl.bat start --gui false c:\Apps\Nuxeo\10.10\bin>"c:\Apps\Nuxeo\10.10\3rdparty\java\bin\java.exe" "-Xbootclasspath/a:c:\Apps\Nuxeo\10.10\3rdparty\java\lib\tools.jar" -Dlauncher.java.opts="-Xms512m -Xmx1024m -Dfile.encoding=UTF-8 -Dmail.mime.decodeparameters=true -Dnet.sf.ehcache.skipUpdateCheck=true -Djava.util.Arrays.useLegacyMergeSort=true -Dsun.net.http.retryPost=false" -Dnuxeo.home="c:\Apps\Nuxeo\10.10" -Dnuxeo.conf="C:\ProgramData\Nuxeo\conf\nuxeo.conf" -Dnuxeo.log.dir="C:/ProgramData/Nuxeo/logs" -Dlog.id="-15052019_18092435" -jar "C:/ProgramData/Nuxeo/tmp\nuxeo-launcher-24538.jar" start --gui false Nuxeo home: c:\Apps\Nuxeo\10.10 Nuxeo configuration: C:\ProgramData\Nuxeo\conf\nuxeo.conf Include template: c:\Apps\Nuxeo\10.10\templates\common-base Include template: c:\Apps\Nuxeo\10.10\templates\common Include template: c:\Apps\Nuxeo\10.10\templates\postgresql Include template: c:\Apps\Nuxeo\10.10\templates\drive Configuration files generation (nuxeo.force.generation=true)... Configuration files generated. Server start failed (1). Error occurred during initialization of VM Could not reserve enough space for 1048576KB object heap
Il apparaît donc clairement que le problème concerne la mémoire.
Java embarqué
Pour cette installation, aucune variable d'environnement relative à Java n'est mise en place, JAVA_HOME
ou JRE_HOME
. Ainsi, c'est la version embarquée dans l'instance Nuxeo
qui est utilisée, comme l'indique la ligne commande c:\Apps\Nuxeo\10.10\3rdparty\java\bin\java.exe
.
L'argument -version
va permettre de connaitre la version précise.
c:\Apps\Nuxeo\10.10\bin>c:\Apps\Nuxeo\10.10\3rdparty\java\bin\java.exe -version openjdk version "1.8.0_191-1-ojdkbuild" OpenJDK Runtime Environment (build 1.8.0_191-1-ojdkbuild-b12) OpenJDK Server VM (build 25.191-b12, mixed mode)
Il est alors constaté que la version est un OpenJDK
mais surtout en version 32 bits
. De nos jours, il est quand même courant que les systèmes soient en 64 bits
et il paraît donc nécessaire de basculer sur ce type d'instance.
Installation OpenJDK
Une version 64 bits
doit être téléchargée et installée sur la plateforme. Afin de rester dans le même écosystème de Nuxeo
, les paquets générés par ojdk
sont recherchés et peuvent se trouver à l'adresse https://github.com/ojdkbuild/ojdkbuild.
Afin d'être conforme avec la version embarquée dans Nuxeo
, le paquet ZIP
, en version 64 bits
, de la release java-1.8.0-openjdk-1.8.0.191-1.b12
est téléchargée puis décompresser dans le répertoire C:\Apps\Java\ojdk-openjdk-1.8.0.181
.
A noter qu'il existe une multitude de projets mettant à disposition des paquets comme ceux-ci.
Configuration Nuxeo
Une fois mise en place, il est nécessaire de configurer Nuxeo
pour utiliser cette nouvelle version. Pour cela, il suffit d'éditer le fichier nuxeo.conf
, par défaut dans le répertoire C:\ProgramData\Nuxeo\conf
pour une installation sous Windows
, et modifier la valeur du paramètre JAVA_HOME
, soit les modifications suivantes dans le cadre de cet article.
##-----------------------------------------------------------------------------
## Java
##-----------------------------------------------------------------------------
#JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
#JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home
JAVA_HOME=C:/Apps/Java/ojdk-openjdk-1.8.0.191
Ainsi, c'est une version 64 bits
qui est utilisée pour démarrer Nuxeo
et les problèmes de mémoire ne sont plus rencontrés. A noter qu'aucune configuration n'a été réalisée en rapport à la taille de la mémoire de la JVM
.