Ubuntu 20.04

Répondre
SRI
Messages : 257
Enregistré le : mer. mars 15, 2017 8:50 pm

dim. avr. 26, 2020 4:39 pm

Je viens de faire un test d'installation et d'utilisation d'Openconcerto 1.6.3 sur une Ubuntu 20.04 fraîchement installée. Cela semble fonctionner sans soucis. Attention, je suis un utilisateur Cloud.

J'ai téléchargé pour cela, la version multi/monoposte en version deb sur le site d'Openconcerto, et j'ai utilisé la commande suivante pour l'installer :

Code : Tout sélectionner

sudo apt-get install ./openconcerto-1.6.3.deb
Pour info, la version de java installée par défaut est la openjdk-11-jre (11.0.7).
Utilisateur Cloud avec un contrat de maintenance.
SRI
Messages : 257
Enregistré le : mer. mars 15, 2017 8:50 pm

lun. mai 04, 2020 8:09 pm

Il y a une incompatibilité entre la version de java installé par défaut (openjdk-11-jre). Cela provoque un plantage général d'OC lors de l'importation d'écritures au moment de la sélection de fichiers.

Pour contourner le problème, il faut installer une vieille version de java : openjdk-8-jre. Lors de mes petits tests, il n'y a que cette version qui fonctionne. Toutes les autres versions d'openjdk-jre sont incompatibles (11, 13 et 14) avec OC à ce niveau là.

Une fois le paquet openjdk-8-jre installé, il faut faire :

Code : Tout sélectionner

sudo update-alternatives --config java
et sélectionner la version 8, dans les choix proposés.

Attention, cette commande fera que tout le système utilisera dorénavant la version 8 au lieu de la 11. Cela peut, peut-être, rendre incompatible d'autres programmes java installés sur l'ordinateur.
Utilisateur Cloud avec un contrat de maintenance.
Denis_q
Messages : 42
Enregistré le : ven. avr. 03, 2015 4:41 pm

lun. août 03, 2020 2:07 pm

Merci pour l'info.

Du coup il n'y a pas possibilité sur un système Linux (Fedora pour moi) d'utiliser plusieurs versions d'openjdk selon les besoins comme on peut le faire avec postgres ?...

Donc question à Guillaume : vous avez prévu de régler cela dans un délais quelconque ?
--
Denis Q.
GNU Linux noyau 6.2.12-300.fc38.x86_64
openjdk 17.0.6 2023-01-17
psql (PostgreSQL) 12.14
JacquesF
Messages : 121
Enregistré le : jeu. mars 14, 2019 10:44 am

lun. août 03, 2020 10:36 pm

Bonsoir,

Sous linux, le lancement d'OC (tout comme le programme de configuration ou la caisse) se fait par le script OpenConcerto.sh.
La commande d'appel de Java est simplement java, donc on prend le programme par défaut (définit dans les alternatives).

Code : Tout sélectionner

#!/bin/bash

java -DredirectToFile=true -Dfwk_sql.debug.undefined_id=true -Dfile.encoding=UTF-8 -Xms100M -Xmx768M $JAVA_VMARGS -jar OpenConcerto.jar
Il suffit de modifier le script pour indiquer le chemin du JDK souhaité et cela devrait régler le problème.
Autre possibilité, installer un JRE de SUN au lieu de Openjdk.
Personnellement j'utilise la 1.8.0_201 en 64bits sans soucis.

Jacques
OpenConcerto v1.7.0
Configuration multiposte - Serveur Postgresql v11.11 sous Linux (Debian 10.9)
Clients Linux (Mageia & Kubuntu) & Windows (7 Pro et 10 Pro)
Denis_q
Messages : 42
Enregistré le : ven. avr. 03, 2015 4:41 pm

mer. août 05, 2020 1:55 pm

Merci Jacques.

J'ai quand-même deux questions qui se posent à propos de java (ce n'est pas le bon forum... mais la bonne conversation .

Dans le script comment introduit-on le choix du jdk ? avec l'option -server peut-être ? mais comment l'adresse-t-on se serveur ?

comment fait-on pour utiliser les class décrites dans le manuel au chapitre 16 ?
--
Denis Q.
GNU Linux noyau 6.2.12-300.fc38.x86_64
openjdk 17.0.6 2023-01-17
psql (PostgreSQL) 12.14
JacquesF
Messages : 121
Enregistré le : jeu. mars 14, 2019 10:44 am

mer. août 05, 2020 4:50 pm

Bonjour,
À la première question, il suffit d'indiquer le chemin complet du binaire java à utiliser.
Tu es sur Mageia, dans la mienne (même si c'est une version 5 car je ne me résous pas à abandonner konqueror comme gestionnaire de fichier pour Dolphin qui est vraiment trop pauvre à mon goût), la structure des binaires java est la même (pour openjdk, il suffit de faire un locate -i openjdk pour trouver le chemin du programme (en principe dans /usr ou /usr/local :

Code : Tout sélectionner

[jacques@jacques ~]$ ls -l /usr/java/
total 8
lrwxrwxrwx 1 root root   16 juin  17  2015 default -> /usr/java/latest/
drwxr-xr-x 7 root root 4096 févr. 16  2019 jre1.8.0_201-amd64/
drwxr-xr-x 7 root root 4096 juin  17  2015 jre1.8.0_45/
lrwxrwxrwx 1 root root   28 févr. 16  2019 latest -> /usr/java/jre1.8.0_201-amd64/
[jacques@jacques ~]$ ls -l /usr/bin/java
lrwxrwxrwx 1 root root 22 févr.  8  2014 /usr/bin/java -> /etc/alternatives/java
[jacques@jacques ~]$ ls -l /etc/alternatives/java
lrwxrwxrwx 1 root root 37 févr. 16  2019 /etc/alternatives/java -> /usr/java/jre1.8.0_201-amd64/bin/java
La version indiquée dans alternative est la 1.8.0_201, il suffit donc de placer le chemin /usr/java/jre1.8.0_45/bin/ devant la commande java du script dans mon exemple si je voulais le lancer avec la version précédente. À adapter bien entendu à ta version.

Pour vérifier, tape le chemin complet dans une console comme /usr/java/jre1.8.0_45/bin/java -version et tu auras la version affichée en retour.

La version de java utilisée est visible dans le menu Informations de OpenConcerto.

Pour la seconde question, je ne suis pas développeur java..., mais c'est pour accéder à la base de données dans une application java, ce qui n'est pas nécessaire en principe, à moins de vouloir développer un module ou une autre appli.

Personnellement je me suis développé une petite appli Web en PHP pour gérer les séances de soins que je fais avec mes clients, et je vais inscrire mes infos dans une base de données spécifique (sur le même serveur PgSql) avec des tables qui sont locales à la base et une vue construite sur les tables utiles d'OC (via des tables distantes puisque je suis sur une autre base). Ça m'évite de saisir les données en double.

Jacques
OpenConcerto v1.7.0
Configuration multiposte - Serveur Postgresql v11.11 sous Linux (Debian 10.9)
Clients Linux (Mageia & Kubuntu) & Windows (7 Pro et 10 Pro)
Denis_q
Messages : 42
Enregistré le : ven. avr. 03, 2015 4:41 pm

mar. août 11, 2020 2:44 pm

Bonjour,
Et merci pour tout cela; je reprendrai ce problème plus tard. Visiblement pour info, on dirait que les répertoires ont changé avec la version 7 :
Histoire que cela puisse servir à d'autres, sur la mageia 7 :

Code : Tout sélectionner

$ locate -i openjdk
/etc/alternatives/java_sdk_1.8.0_openjdk
/etc/alternatives/java_sdk_1.8.0_openjdk_exports
/etc/alternatives/java_sdk_openjdk
/etc/alternatives/java_sdk_openjdk_exports
/etc/alternatives/jre_1.8.0_openjdk
/etc/alternatives/jre_1.8.0_openjdk_exports
/etc/alternatives/jre_openjdk
/etc/alternatives/jre_openjdk_exports
/usr/lib/jvm/java-1.8.0-openjdk
.../...
et

Code : Tout sélectionner

$which java
/usr/bin/java
ll  /usr/bin/java
lrwxrwxrwx 1 root root 22 may  1 23:22 /usr/bin/java -> /etc/alternatives/java
Par contre c'est dans /usr/lib/jvm que ça se trouve ...

Code : Tout sélectionner

$ ll  /etc/alternatives/java
lrwxrwxrwx 1 root root 74 may  1 23:22 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252-1.b09.1.mga7.x86_64/jre/bin/java
Donc par défaut, c'est openjdk-1.8.0.252-1.b09 qui est lancé, ce que m'indique effectivement OpenConcerto et en alternative /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212-1.b04.1.mga7.x86_64
--
Denis Q.
GNU Linux noyau 6.2.12-300.fc38.x86_64
openjdk 17.0.6 2023-01-17
psql (PostgreSQL) 12.14
SRI
Messages : 257
Enregistré le : mer. mars 15, 2017 8:50 pm

jeu. juin 24, 2021 10:04 am

Petite mise à jour de ce post. La version 1.7 d'OC fonctionne avec openjdk-11-jre sous Ubuntu 20.04.
Utilisateur Cloud avec un contrat de maintenance.
Répondre