Provando ad aprire il programma per le fatture elettroniche mi compare il seguente errore
In ubuntu (che ho usato finora) ricordo che avevo dovuto eliminare le versioni di openjdk per evitare problemi ma qui non riesco a trovarne traccia nonostante prima di installare java oracle mi sembrava di averlo visto.
per installare java ho usato una versione x64.rpm
Come hai installato java in fedora?
non ricordo di preciso. sono passato da ubuntu a fedora ed ho fatto diverse cose e pareccha confusione.
in realtà non è necessario rimuovere openjdk, sarebbe sufficiente impostare la versione predefinita di java da utilizzare
tanto per cominciare potresti usare il comando
update-java-alternatives --list
per vedere i percorsi delle alternative disponibili sul sistema.
per selezionare la versione predefinita puoi utilizzare il comando:
update-alternatives --config java
la versione predefinita sembrerebbe già java oracle.
Perchè non rimuoveresti la openjdk? col vecchio pc con ubuntu andava tutto senza openjdk.
PS. all’accensione del pc il programma di fattura elettronica parte subito senza dare alcun comando (e non dovrebbe) tranne poi bloccarsi
In Fedora (ma in generale) installare varie versioni di Java può essere controproducente. Openjdk dovrebbe essere più che adeguata per la maggior parte degli usi.
Comunque l’installazione deve essere fatta in modo attento, pensa il mal funzionamento.
Per Fedora vedi la guida ufficiale…
Avevo seguito questa guida: https://www.java.com/it/download/help/linux_x64rpm_install.html#download
ora sono nelle sabbie mobili.
A- devo scaricare il file rpm o il tar.gz?
B-seguendo la guida ufficiale di fedora:
- Passare alla pagina dei download di Oracle Java SE e scegliere la versione di Java che si desidera utilizzare.
- Accettare il contratto di licenza e scaricare il file tar.gz appropriato per l’architettura del sistema.
- Scopare il file tar.gz da qualche parte. Ad esempio, per estrarlo nella directory /opt:
sudo tar xf Downloads/jdk-18_linux-x64_bin.tar.gz -C /opt
- Impostare la variabile d’ambiente JAVA-HOME in tale directory. Ad esempio:
export JAVA_HOME=/opt/jdk-21.0.1.1
-posso lasciarlo nella dir Scaricati e in questo caso come modifico i comandi oppure devo esportarlo in un’altra directory (non ho opt)
-il comando al punto 4 immagino non sia proprio un copia-incolla . non lo capisco.
Personalmente ho sempre utilizzato la versione rpm senza aver mai avuto problemi, semplicemente impostando la versione predefinita di java.
Utilizzando il tarball sarai costretto ad ogni cambio di versione a modificare il percorso della variabile d’ambiente dato che ogni nuova versione sarà estratta in un percorso differente.
Comunque tieni presente che molti software basati su java potrebbero già includere i binari necessari alla loro esecuzione… non so se potrebbe essere il tuo caso, ma sarebbe bene verificare.
Ti consiglierei di capire innanzi tutto da cosa è causato il problema, magari lanciando il programma dal terminale e controllando l’output restituto per capire quali errori ne impediscono il corretto funzionamento.
danilo@fedora:~$ sudo alternatives --config java
[sudo] password di danilo:
Ci sono 2 programmi che forniscono ‘java’.
Selezione Comando
1 java-17-openjdk.x86_64 (/usr/lib/jvm/java-17-openjdk-17.0.9.0.9-1.fc39.x86_64/bin/java)
*+ 2 /usr/lib/jvm/jre-1.8-oracle-x64/bin/java
Invio per mantenere l’attuale selezione[+], o inserire il numero di selezione:
danilo@fedora:~$ javaws @23
javaws: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory
Elimina i pacchetti Java che avevi installato e usa openjdk presente in Fedora.
tra i vari tentativi ho fatto anche quello ma ricordo che con ubuntu non solo FEL18 funzionava solo con oracle java ma avevo dovuto rimuovere ogni versione di openjdk
Le variabili sono tante e troppe. Inizia con il ripristino del tuo sistema e prima solo openjdk, poi vediamo che errori ti da.
prova ad eseguire il comando:
sudo alternatives --config javaws
anche se mi sembra di ricordare che il pacchetto rpm non aggiungesse l’alternativa javaws al sistema.
Forse in questo caso tornerebbe effettivamente utile usare il tarball e aggiungere manualmente il percorso tra le alternative con il comando:
sudo alternatives --install “/usr/bin/javaws” “javaws” “Percorso dove è stato estratto il tarball di Java/bin/javaws” 1
ed in seguito scegliere come alternativa predefinita quella aggiunta manualmente con il comando
sudo alternatives --config javaws
in alternativa prova ad usare openjdk ma controlla che sia presente la libreria richiesta
dnf list installed 'libnsl*'
eventualmente se già presente la versione x86_64 del pacchetto, prova magari ad installare anche la versione i686
@oStile10001 con questi consigli crei solo confusione ulteriore. È fortemente sconsigliato installare pacchetti Tarball come anche mischiare le architetture dei pacchetti. A che pro, inoltre, per Java installare anche un pacchetto 32 bit se l’architettura è un’altra???
Vi ringrazio. Siete stati tutti molto gentili ma con Fedora ero troppo in difficoltà e sono tornato su Ubuntu.