
Uploaded with ImageShack.us
Debian sid 64, Java jre.
Promemoria.
Rimossi i 3 pacchetti Sun jre osbsoleti:
sun-java6-bin_6.26-3_amd64.deb
sun-java6-plugin_6.26-3_amd64.deb
sun-java6-jre_6.26-3_all.deb
Scaricato da
http://www.oracle.com/technetwork/java/javase/overview/index.html
jre-6u30-linux-x64.bin
eseguito, estrae la cartella jre1.6.0_30 spostata poi in /usr/lib/jvm/
Creato link simbolico oracle-jre.1.6
cd /usr/lib/jvm
sudo ln -s jre1.6.0_30 oracle-jre.1.6
Creata una alternativa per
/usr/bin/java
con slave
/usr/bin/java_wm
/usr/bin/javaws
/usr/lib/firefox/plugins/libjavaplugin.so
con il comando
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/oracle-jre.1.6/bin/java 3 --slave /usr/bin/java_vm java_vm /usr/lib/jvm/oracle-jre.1.6/bin/java_vm --slave /usr/bin/javaws javaws /usr/lib/jvm/oracle-jre.1.6/bin/javaws --slave /usr/lib/firefox/plugins/libjavaplugin.so firefox-javaplugin.so /usr/lib/jvm/oracle-jre.1.6/lib/amd64/libnpjp2.so
ora la situazione è questa:
ls -l /etc/alternatives/java* lrwxrwxrwx 1 root root 46 dic 18 22:58 /etc/alternatives/java -> /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java lrwxrwxrwx 1 root root 56 dic 18 22:58 /etc/alternatives/java.1.gz -> /usr/lib/jvm/java-6-openjdk-amd64/jre/man/man1/java.1.gz ls -l /etc/alternatives/firefox-javaplugin.so ls: impossibile accedere a /etc/alternatives/firefox-javaplugin.so: File o directory non esistente
Possiamo passare alla versione oracle 6 con
sudo update-alternatives --config java
Sono disponibili 2 scelte per l'alternativa java (che fornisce /usr/bin/java). Selezione Percorso Priorità Stato ------------------------------------------------------------ * 0 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 modalità automatica 1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 modalità manuale 2 /usr/lib/jvm/oracle-jre.1.6/bin/java 3 modalità manuale Premere Invio per mantenere il valore predefinito[*] o digitare il numero della selezione: 2 update-alternatives: viene usato /usr/lib/jvm/oracle-jre.1.6/bin/java per fornire /usr/bin/java (java) in modalità manuale.
dopo il cambio la situazione diviene questa:
ls -l /etc/alternatives/java* lrwxrwxrwx 1 root root 36 dic 18 23:05 /etc/alternatives/java -> /usr/lib/jvm/oracle-jre.1.6/bin/java lrwxrwxrwx 1 root root 39 dic 18 23:05 /etc/alternatives/java_vm -> /usr/lib/jvm/oracle-jre.1.6/bin/java_vm lrwxrwxrwx 1 root root 38 dic 18 23:05 /etc/alternatives/javaws -> /usr/lib/jvm/oracle-jre.1.6/bin/javaws ls -l /etc/alternatives/firefox-javaplugin.so lrwxrwxrwx 1 root root 49 dic 18 23:21 /etc/alternatives/firefox-javaplugin.so -> /usr/lib/jvm/oracle-jre.1.6/lib/amd64/libnpjp2.so ls -l /usr/lib/jvm/oracle-jre.1.6 lrwxrwxrwx 1 root root 11 dic 18 22:01 /usr/lib/jvm/oracle-jre.1.6 -> jre1.6.0_30
Il plugin firefox non viene rilevato perchè è nella cartella /usr/lib/firefox/plugins/ che per qualche oscuro motivo non viene rilevata, mentre viene vista la cartella /usr/lib/mozilla/plugins.
Risolviamo creando un link simbolico:
cd /usr/lib/mozilla/plugins
sudo ln -s /usr/lib/firefox/plugins/libjavaplugin.so libjavaplugin.so
e a questo punto tutto è a posto.
Al prossimo aggiornamento basta copiare la nuova cartella e aggiornare il link simbolico.
Esempio per una ipotetica versione 6u35
jre-6u35-linux-x64.bin
scompattata la jre e spostata in /usr/lib/jvm/
/usr/lib/jvm/jre1.6.0_35
aggiornare link simbolico oracle-jre.1.6
cd /usr/lib/jvm
sudo ln -sf jre1.6.0_35 oracle-jre.1.6
Jre versione 7
Scaricato il file
jre-7u2-linux-x64.tar.gz
copiata in /usr/lib/jvm la cartella jre1.7.0_02 e creato il link simbolico
cd /usr/lib/jvm
sudo ln -s jre1.7.0_02 oracle-jre.1.7
creata l’alternativa con i tre slave:
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/oracle-jre.1.7/bin/java 10 --slave /usr/bin/java_vm java_vm /usr/lib/jvm/oracle-jre.1.7/bin/java_vm --slave /usr/bin/javaws javaws /usr/lib/jvm/oracle-jre.1.7/bin/javaws --slave /usr/lib/firefox/plugins/libjavaplugin.so firefox-javaplugin.so /usr/lib/jvm/oracle-jre.1.7/lib/amd64/libnpjp2.so
Ora basta il solito
sudo update-alternatives --config java
Sono disponibili 3 scelte per l'alternativa java (che fornisce /usr/bin/java). Selezione Percorso Priorità Stato ------------------------------------------------------------ 0 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 modalità automatica 1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 modalità manuale * 2 /usr/lib/jvm/oracle-jre.1.6/bin/java 3 modalità manuale 3 /usr/lib/jvm/oracle-jre.1.7/bin/java 10 modalità manuale Premere Invio per mantenere il valore predefinito[*] o digitare il numero della selezione: 3 update-alternatives: viene usato /usr/lib/jvm/oracle-jre.1.7/bin/java per fornire /usr/bin/java (java) in modalità manuale.
Dopo il cambio la situazione diventa:
ls -l /etc/alternatives/java* lrwxrwxrwx 1 root root 36 dic 18 23:33 /etc/alternatives/java -> /usr/lib/jvm/oracle-jre.1.7/bin/java lrwxrwxrwx 1 root root 39 dic 18 23:33 /etc/alternatives/java_vm -> /usr/lib/jvm/oracle-jre.1.7/bin/java_vm lrwxrwxrwx 1 root root 38 dic 18 23:33 /etc/alternatives/javaws -> /usr/lib/jvm/oracle-jre.1.7/bin/javaws ls -l /etc/alternatives/firefox-javaplugin.so lrwxrwxrwx 1 root root 49 dic 18 23:33 /etc/alternatives/firefox-javaplugin.so -> /usr/lib/jvm/oracle-jre.1.7/lib/amd64/libnpjp2.so ls -l /usr/lib/jvm/oracle-jre.1.7 lrwxrwxrwx 1 root root 11 dic 18 23:32 /usr/lib/jvm/oracle-jre.1.7 -> jre1.7.0_02
Anche in questo caso per eventuali aggiornamenti basta scaricare l’archivio,
copiare la cartella in /usr/lib/jvm e aggiornare il link simbolico oracle-jre.1.7 alla nuova cartella.
Per rimuovere l’alternativa jre 6
sudo update-alternatives --remove java /usr/lib/jvm/oracle-jre.1.6/bin/java
cancellate la cartella
/usr/lib/jvm/jre1.6.0_35
e il link simbolico
oracle-jre.1.6
Per rimuovere l’alternativa jre 7
sudo update-alternatives --remove java /usr/lib/jvm/oracle-jre.1.7/bin/java
cancellate la cartella
/usr/lib/jvm/jre1.7.0_02
e il link simbolico
oracle-jre.1.7
Attenzione:
promemoria personale per debian 64 sid e Oracle JRE 6 e 7.
Se utilizzate quanto riportato senza sapere cosa fate, o su una 32 bit o per gli archivi SDK e fate un gran casino:
son fatti vostri.
Esiste anche un altro metodo usando update-java-alternatives e un file di informazione delle alternative in
/usr/lib/jvm/.jname.jinfo
Ad esempio quello del sun java
.java-6-sun.jinfo
è questo
http://pastebin.com/tuwzAQWr
per info
man update-java-alternatives
Commento di telperion — dicembre 20, 2011 @ 12:54 pm |
Ciao, sto cercando di installare jre-6u30-linux-x64.bin su Debian sid 64bit e ho seguito dettagliatamente la tua guida ma continua a non settarmi bene l’alternativa:
update-alternatives –config java
Sono disponibili 2 scelte per l’alternativa java (che fornisce /usr/bin/java).
Selezione Percorso Priorità Stato
————————————————————
* 0 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 modalità automatica
1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 modalità manuale
2 /usr/lib/jvm/oracle-jre.1.6/bin/java 3 modalità manuale
Premere Invio per mantenere il valore predefinito[*] o digitare il numero della selezione:2
update-alternatives: viene usato /usr/lib/jvm/oracle-jre.1.6/bin/java per fornire /usr/bin/java (java) in modalità manuale.
java -version
java version “1.6.0_24″
OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b24~pre2-1)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
Infatti se provo a ridare “update-alternatives –config java” l’opzione predefinita è ancora la 0 (cioè /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java), dove potrebbe essere il problema?
Commento di Mattia — dicembre 23, 2011 @ 11:52 am |
mc@debian64:~$ java -version
java version “1.6.0_30″
Java(TM) SE Runtime Environment (build 1.6.0_30-b12)
Java HotSpot(TM) 64-Bit Server VM (build 20.5-b03, mixed mode)
prova a rimuovere l’alternativa
Per rimuovere l’alternativa jre 6
poi rifalla
con il comando (è una riga unica tutto il malloppone)
poi cambia java con update-alternative e verifica con ls (tutti e tre)
Dopo il cambio la situazione diventa:
che i vari link corrispondano.
Commento di telperion — dicembre 23, 2011 @ 12:47 pm |
non vedo i comandi da dare nella tua risposta
Commento di Mattia — gennaio 6, 2012 @ 12:11 pm