#1 Le 20/09/2016, à 10:57
- catsey
[Résolu] xmessage : version jre trop ancienne
bonjour à tous,
J'ai lancé un appel dans le forum imprimantes, mais tout compte il serait peut-être plus judicieux de le placer ici.
Depuis mes tentatives d'installation d'une imprimante Lexmark, xmessage m'indique :
"The version of Java Runtime Environment (JRE) detected in your system is below the required version.
The required version for Java Runtime Environment (JRE) should be 1.6 or higher."
Pourtant :
cat@cat-300E4A-300E5A-300E7A-3430EA-3530EA:~$ java -version
openjdk version "9-internal"
OpenJDK Runtime Environment (build 9-internal+0-2016-04-14-195246.buildd.src)
OpenJDK 64-Bit Server VM (build 9-internal+0-2016-04-14-195246.buildd.src, mixed mode)
cat@cat-300E4A-300E5A-300E7A-3430EA-3530EA:~$
En fouinant un peu, dans les fichiers cachés de Lexmark, j'ai trouvé l'origine de ce message :
#!/bin/sh
OS_ARCH=`uname -aa | grep x86_64`
ARCH=''
if [ -n "$OS_ARCH" ]; then
ARCH=64
fi
JAVA_CMD=java
REQUIRED_VERSION=1.6
if [ -f "/usr/local/lexmark/fwu_legacy/jre/bin/java" ]; then
JAVA_CMD="/usr/local/lexmark/fwu_legacy/jre/bin/java"
elif [ -f "/usr/local/lexmark/wsu_legacy/jre/bin/java" ]; then
JAVA_CMD="/usr/local/lexmark/wsu_legacy/jre/bin/java"
elif [ -f "/usr/local/lexmark/v3/jre/bin/java" ]; then
JAVA_CMD="/usr/local/lexmark/v3/jre/bin/java"
elif [ -f "/usr/bin/java" ]; then
JAVA_CMD="/usr/bin/java"
elif [ -f "/etc/alternatives/java" ]; then
JAVA_CMD="/etc/alternatives/java"
else
exit 1
fi
$JAVA_CMD -version 2> /tmp/java_version
VERSION=`cat /tmp/java_version | grep "java version" | awk '{ print substr($3, 2, length($3)-2); }'`
rm /tmp/java_version
VERSION=`echo $VERSION | awk '{ print substr($1, 1, 3); }' | sed -e 's;\.;0;g'`
REQUIRED_VERSION=`echo $REQUIRED_VERSION | sed -e 's;\.;0;g'`
if [ $VERSION ]
then
if [ $VERSION -ge $REQUIRED_VERSION ]
then
${JAVA_CMD} -Djava.library.path=/usr/local/lexmark/v3/lib${ARCH} -Ddbus=mdwapclss.apps.umframework.DBusProxyLegacy -classpath /usr/local/lexmark/v3/jar/debug-disable-1.1.jar:/usr/local/lexmark/v3/jar/hexdump-0.2.jar:/usr/local/lexmark/v3/jar/libdbus-java-2.6.jar:/usr/local/lexmark/v3/jar/unix-0.5.jar:/usr/local/lexmark/v3/jar/xpp3_min-1.1.4c.jar:/usr/local/lexmark/v3/jar/xstream-1.3.1.jar:/usr/local/lexmark/v3/jar/uiframework.jar:/usr/local/lexmark/v3/jar/tools.jar:/usr/local/lexmark/v3/jar/devicecore.jar:/usr/local/lexmark/v3/jar/config.jar:/usr/local/lexmark/v3/jar/localize.jar:/usr/local/lexmark/v3/jar/umframework.jar mdwapclss.apps.umframework.UserMessagingFramework
else
xmessage -buttons "OK" "The version of Java Runtime Environment (JRE) detected in your system is below the required version.
The required version for Java Runtime Environment (JRE) should be 1.6 or higher." -center
exit 1
fi
else
xmessage -buttons "OK" "The version of Java Runtime Environment (JRE) detected in your system is below the required version.
The required version for Java Runtime Environment (JRE) should be 1.6 or higher." -center
exit 1
fi
Je ne connais pas ce langage, mais ça ressemble à du C.
Quelqu'un peut-il me dire :
quel est le langage utilisé,
où va-t-il donc chercher les infos sur ma version java
J'ai l'impression qu'il va chercher la version dans "cat /tmp/java_version", non ?
Merci d'avance.
Dernière modification par catsey (Le 22/09/2016, à 12:28)
Cordialement.
Lenovo ideapad 500-15lsk, Ubuntu 16.04 LTS en dual boot Win 10
Samsung NP300E7A, Debian 9.4, Cinnamon 3.2.7 en monoboot
Hors ligne
#2 Le 20/09/2016, à 13:44
- catsey
Re : [Résolu] xmessage : version jre trop ancienne
J'imagine que sous la racine (où se trouvent les répertoires bin, boot, ...) dans le répertoire tmp, je devrais trouver un fichier java_version. Je n'ai que 5 fichiers cachés : .umf_cat, .X0-lock, config-err-28josQ, gs_sohSve et unity_support_test.0, mais pas de fichier java_version.
Dernière modification par catsey (Le 20/09/2016, à 13:45)
Cordialement.
Lenovo ideapad 500-15lsk, Ubuntu 16.04 LTS en dual boot Win 10
Samsung NP300E7A, Debian 9.4, Cinnamon 3.2.7 en monoboot
Hors ligne
#3 Le 20/09/2016, à 13:55
- michel_04
Re : [Résolu] xmessage : version jre trop ancienne
Bonjour,
Tu utilises la version 16.04 ?
Avec Xubuntu 16.04 :
michel@Michel-E320:~$ java -version
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-8u91-b14-3ubuntu1~16.04.1-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)
michel@Michel-E320:~$
A+
:D
De la bonne manière de poser les questions - Trouver de l'aide grâce au Groupe des Parrains Linux - Le Pacte des Gnous
PCs sous Debian Stable & Debian Sid.
Hors ligne
#4 Le 20/09/2016, à 14:07
- catsey
Re : [Résolu] xmessage : version jre trop ancienne
Bonjour michel_04,
Je suis bien sur ubuntu 16.04lts (après mise à jour de la 14.04lts). J'ai refait toutes les mises à jour. Le pilote pour linux est écrit par lexmark en 2012... Lors du choix des pilotes pour linux/unix, je n'avais le choix qu'entre fedora, opensuse 10 et 11.
Nouveau sur linux, j'ai pris opensuse 11... et le problème vient peut-être de là. Je ne connais pas les variantes entre les versions, et je ne sais pas où se loge java -version, qui est un nom de fichier, non ? En pleine découverte, quoi !!!
Merci
Cordialement.
Lenovo ideapad 500-15lsk, Ubuntu 16.04 LTS en dual boot Win 10
Samsung NP300E7A, Debian 9.4, Cinnamon 3.2.7 en monoboot
Hors ligne
#5 Le 20/09/2016, à 14:24
- michel_04
Re : [Résolu] xmessage : version jre trop ancienne
Re,
opensuse 11
Suse, utilises des paquets rpm, à convertir en deb pour Ubuntu, regarde Alien : convertir un paquet dans un autre format .
A+
:D
De la bonne manière de poser les questions - Trouver de l'aide grâce au Groupe des Parrains Linux - Le Pacte des Gnous
PCs sous Debian Stable & Debian Sid.
Hors ligne
#6 Le 20/09/2016, à 20:05
- catsey
Re : [Résolu] xmessage : version jre trop ancienne
autant pour moi, michel_04 ! J'ai en fait téléchargé la version pour ubuntu 12.04 ! Ils sont d'ailleurs en .deb (autodecompressibles si j'ai bien compris ?...).
Si tu connais cette version d'ubuntu, sais-tu où se trouvent les infos sur la version java, et sous quel nom ? Parce que sous 16.04, la version s'affiche sur la console en tapant "java -version" et non pas "java_version". L'idée sous-jacente serait de modifier le chemin de recherche du programme (cf #1) pour voir ce qui se passe. A propos, ce ne serait pas du java aussi, ce langage ?
Merci et @+.
Cordialement.
Lenovo ideapad 500-15lsk, Ubuntu 16.04 LTS en dual boot Win 10
Samsung NP300E7A, Debian 9.4, Cinnamon 3.2.7 en monoboot
Hors ligne
#7 Le 21/09/2016, à 09:40
- catsey
Re : [Résolu] xmessage : version jre trop ancienne
Bonjour,
Il me semble que le langage de ce script est du bash. Comme ce langage n'a pas à être compilé, je me demande si je ne pourrais pas modifier la ligne
VERSION=`cat /tmp/java_version | grep "java version" | awk '{ print substr($3, 2, length($3)-2); }'`
en
VERSION=`cat /[b]chemin à suivre pour trouver la version[/b]/[b]java -version[/b] | grep "java version" | awk '{ print substr($3, 2, length($3)-2); }'`
en priant pour que cela suffise... Je suis jeune, pas en âge mais sur linux...
Le script édité par lexmark en 2012 concernait la version 12.04 d'ubuntu. Le chemin conduisant a la version java a du changer depuis...
En regardant dans usr/lib/jvm, je possède des dossiers default-java, java-1.8.0-openjdk-amd64, java-1.9.0-openjdk-amd64, java-8-openjdk-amd64 et java-9-openjdk-amd64.
java -version me dit que j'utilise le dernier cité.
Quelqu'un utilisant ubuntu 12.04 peut-il confirmer que la version de java est bien inscrite dans cat /tmp/java_version ?
Et quelqu'un peut-il me dire si ma démarche est bonne ?
Merci d'avance.
Cordialement.
Lenovo ideapad 500-15lsk, Ubuntu 16.04 LTS en dual boot Win 10
Samsung NP300E7A, Debian 9.4, Cinnamon 3.2.7 en monoboot
Hors ligne
#8 Le 22/09/2016, à 12:27
- catsey
Re : [Résolu] xmessage : version jre trop ancienne
Problème résolu par lynn dans la section dev et prog :
Il suffisait de modifier la ligne :
VERSION=`cat /tmp/java_version | grep "java version" | awk '{ print substr($3, 2, length($3)-2); }'`
du script umf.sh de lexmark par :
VERSION=`cat /tmp/java_version | grep "openjdk version" | awk '{ print substr($3, 2, length($3)-2); }'`
Merci pour ton aide ! Je passe en résolu.
Cordialement.
Lenovo ideapad 500-15lsk, Ubuntu 16.04 LTS en dual boot Win 10
Samsung NP300E7A, Debian 9.4, Cinnamon 3.2.7 en monoboot
Hors ligne
#9 Le 22/09/2016, à 13:14
- pingouinux
Re : [Résolu] xmessage : version jre trop ancienne
Bonjour,
Tu peux même simplifier :
VERSION=$(awk -F\" '/openjdk version/{print $2}' /tmp/java_version)
Hors ligne
#10 Le 22/09/2016, à 13:35
- catsey
Re : [Résolu] xmessage : version jre trop ancienne
Merci pingouinux,
Mes compétences sont très limitées en la matière (pour ne pas dire nulles) ! Je vais en rester là, à moins que tu ne désires que je fasse un test ?
Cordialement.
Lenovo ideapad 500-15lsk, Ubuntu 16.04 LTS en dual boot Win 10
Samsung NP300E7A, Debian 9.4, Cinnamon 3.2.7 en monoboot
Hors ligne
#11 Le 22/09/2016, à 14:24
- pingouinux
Re : [Résolu] xmessage : version jre trop ancienne
Tu fais comme tu veux, c'était juste pour information.
Hors ligne