PDA

View Full Version : Java su Ubuntu


**MixMasterMike**
27-08-2007, 17:47
Ciao a tutti, qualcuno sa come costringere ubuntu ad utiizzare la jvm di sun anzichè quella preinstallata nel s.o. ?
Ho installato java manualmente (cioè scaricando il .bin dal sito della sun e poi eseguendolo) su un sistema ubuntu 7.04 e ho aggiornato il PATH nel file .bashrc ma quando do java -version continuo ad avere:
java version "1.4.2"
gij (GNU libgcj) version 4.1.2 (Ubuntu 4.1.2-0ubuntu5)

mentre /usr/jdk1.6/bin/java -version da:
java version "1.6.0_02"
Java(TM) SE Runtime Environment (build 1.6.0_02-b05)
Java HotSpot(TM) Server VM (build 1.6.0_02-b05, mixed mode)

Ho provato col comando sudo update-alternatives --config java
ma mi dice che l'unico programma che può fornire java è /usr/bin/gij-wrapper-4.1

Grazie in anticipo

**MixMasterMike**
27-08-2007, 17:55
Ok, come non detto, ho risolto modificando le opzioni di alternatives.
Grazie comunque

Leon56
27-08-2007, 18:17
E' una settimana che stò cercando di installare Java su Ubuntu 7.04. Mi sai spiegare (con molta semplicità) come si fa? Avevo deciso di rinunciare fino a quando ho visto il tuo messaggio.

PGI-Bis
27-08-2007, 20:03
Sun ha una guida ufficiale. E' vecchia come il cucco ma può darsi che le cose non siano cambiate.

https://jdk-distros.dev.java.net/ubuntu.html

**MixMasterMike**
27-08-2007, 21:15
E' una settimana che stò cercando di installare Java su Ubuntu 7.04. Mi sai spiegare (con molta semplicità) come si fa? Avevo deciso di rinunciare fino a quando ho visto il tuo messaggio.

Vai sul sito della sun e scarica il pacchetto jdk 6 update 2, nel formato ".bin"
supponiamo che il file si chiami jdk1.6.bin
quando hai finito di scaricarlo apri una shell nella posizione in cui si trova il file
dai il permesso di esecuzione sul file col comando chmod a+x jdk1.6.bin
esegui il file col comando ./jdk1.6.bin
ti viene mostrato un contratto d'uso, accettalo e procedi con l'installazione
alla fine del processo avrai una cartella che contiene tutto il pacchetto java
sposta la cartella intera dove preferisci, io l'ho messa su /usr/jdk1.6_02
aggiorna il path modificando il file .bashrc presente nella tua home. Ci dovresti trovare una riga simile a questa: PATH="$PATH:/home/pippo/bin" tu aggiungi alla fine il percorso degli eseguibili di java cosi PATH="$PATH:/home/pippo/bin:/usr/jdk1.6/bin" salva ed esci.
da prompt dai source .bashrc
ora scrivi javac e vedi se funziona.

Questo procedimento è consigliato solo se non vuoi usare i pacchetti pronti di ubuntu. Io comunque ti consiglio di vedere la guida a questo link che è fatta molto bene:
http://www.jugsardegna.org/vqwiki/jsp/Wiki?JugAvisLinuxDevEnv

CIao

Leon56
27-08-2007, 21:27
Grazie siete stati molto gentili.

AntonioBO
28-08-2007, 11:02
Grazie siete stati molto gentili.

Guarda che nei rep Medibuntu, la trovi direttamente da scaricare e installare in automatico.

vampirodolce1
28-08-2007, 17:36
Ho installato Java su firefox (iceweasel), qualcuno mi sa spiegare come mai se apro pagine da utente normale firefox crasha chiudendosi istantaneamente, mentre se faccio lo stesso agendo come root tutto funziona perfettamente?
Grazie.

Leon56
28-08-2007, 18:19
Questo è il mio file .bascr dove metto $PATH.... etc
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

# don't put duplicate lines in the history. See bash(1) for more options
export HISTCONTROL=ignoredups
# ... and ignore same sucessive entries.
export HISTCONTROL=ignoreboth

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)"

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color)
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
;;
*)
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
;;
esac

# Comment in the above and uncomment this below for a color prompt
#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007"'
;;
*)
;;
esac

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

#if [ -f ~/.bash_aliases ]; then
# . ~/.bash_aliases
#fi

# enable color support of ls and also add handy aliases
if [ "$TERM" != "dumb" ]; then
eval "`dircolors -b`"
alias ls='ls --color=auto'
#alias dir='ls --color=auto --format=vertical'
#alias vdir='ls --color=auto --format=long'
fi

# some more ls aliases
#alias ll='ls -l'
#alias la='ls -A'
#alias l='ls -CF'

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi

Leon56
28-08-2007, 19:51
Vai sul sito della sun e scarica il pacchetto jdk 6 update 2, nel formato ".bin"
supponiamo che il file si chiami jdk1.6.bin
quando hai finito di scaricarlo apri una shell nella posizione in cui si trova il file
dai il permesso di esecuzione sul file col comando chmod a+x jdk1.6.bin
esegui il file col comando ./jdk1.6.bin
ti viene mostrato un contratto d'uso, accettalo e procedi con l'installazione
alla fine del processo avrai una cartella che contiene tutto il pacchetto java
sposta la cartella intera dove preferisci, io l'ho messa su /usr/jdk1.6_02
aggiorna il path modificando il file .bashrc presente nella tua home. Ci dovresti trovare una riga simile a questa: PATH="$PATH:/home/pippo/bin" tu aggiungi alla fine il percorso degli eseguibili di java cosi PATH="$PATH:/home/pippo/bin:/usr/jdk1.6/bin" salva ed esci.
da prompt dai source .bashrc
ora scrivi javac e vedi se funziona.

Questo procedimento è consigliato solo se non vuoi usare i pacchetti pronti di ubuntu. Io comunque ti consiglio di vedere la guida a questo link che è fatta molto bene:
http://www.jugsardegna.org/vqwiki/jsp/Wiki?JugAvisLinuxDevEnv

CIao

Non sono riuscito a trovare la riga simile che citi, però un pezzo quì ed un pezzo là sono arrivato a questo punto:
maurizio@maurizio-laptop:~$ sudo update-alternatives --config java
Password:

Ci sono 5 alternative che forniscono `java'.

Selezione Alternativa
-----------------------------------------------
1 /usr/bin/gij-wrapper-4.1
*+ 2 /usr/lib/j2se/1.4/bin/java
3 /usr/bin/jamvm
4 /usr/lib/jvm/java-1.5.0-sun/jre/bin/java
5 /usr/lib/jvm/java-6-sun/jre/bin/java

Premi invio per mantenere il default , o inserisci il numero da selezionare:5
Uso `/usr/lib/jvm/java-6-sun/jre/bin/java' per fornire `java'.
maurizio@maurizio-laptop:~$ java -version
java version "1.6.0"
Java(TM) SE Runtime Environment (build 1.6.0-b105)
Java HotSpot(TM) Client VM (build 1.6.0-b105, mixed mode, sharing)
maurizio@maurizio-laptop:~$
Grazie per il link veramente utile. Ciao.

codreanu
29-08-2007, 02:17
scusate se mi intrometto. ho installato la JDK6 dal sito. l'ho messa in /opt ed ho aggiunto a .bashrc il path. riesco ad usare javac della sun adesso senza aver usato update-alternatives ma java e sempre quello di gij. ho provato con update-alternatives ma mi dice che c'è solo gij. grazie in anticipo.

R4iDei
02-09-2007, 22:28
Il metodo piu rustico è cambiare i collegamenti che stanno sotto la directory /usr/bin

Quindi ci entri cancelli il "vecchio java" e fai un collegamento a quello nuovo

cd /usr/bin
rm java
ln -s /DIRECTORYDELJAVA/bin/java java

Stessa cosa col javac se ti serve.
Ovviamente devi poi utilizzare i giusti percorsi di classpath dentro il .bashrc

Inoltre utilizzando come $PATH $PATH:/DIRECTORYDELJAVA/bin
potresti anche semplicemente eliminare gli esegibili java e javac da /usrb/bin

La soluzione piu comoda è fare tutto da repositories (da tempo ormai c'è java sui repo) e utilizzare update-alternatives.

Se posso dare un consiglino è meglio rimanere sulla 1.5 per sviluppare, anche se cmq poi con un ide tipo netbeans o eclipse si puo sceglielre quale jdk utilizzare per ogni progetto!