Come posso installare un JDK senza testa su un server Ubuntu Jaunty?


8

Di recente ho configurato un server di build che richiede l'esecuzione di un JDK (ad esempio, per compilare i sorgenti Java). Il pacchetto OpenJDK in Ubuntu inserisce OpenJDK JRE come una dipendenza che, a sua volta, dipende da un gran numero di pacchetti che sono rilevanti solo per gli ambienti grafici. Per JRE standard, esiste una versione senza testa del pacchetto, ma per JDK, no.

Questo problema è stato discusso in vari punti prima e una soluzione che ho trovato e usato era questa:

$ apt-get --no-install-recommends -d install openjdk-6-jdk
$ dpkg -i --ignore-depends=openjdk-6-jre /path/to/just-downloaded.deb

Mentre questo ha funzionato, ora lascia il mio sistema con un albero delle dipendenze rotto e apt-get rifiuta ulteriori installazioni fino alla mia esecuzione apt-get -f.

C'è una soluzione migliore a questo?

Risposte:


4

Questo è stato discusso nel seguente bug di Ubuntu .

Per quanto posso vedere, hai le seguenti opzioni:

  1. Utilizzare il JDK Java non libero di Sun. (È possibile utilizzare il programma JavaPackage da debian / ubuntu per creare un pacakge deb del java JDK non libero).
  2. Collabora con gli sviluppatori Ubuntu per risolvere questo problema.
  3. Crea il tuo pacchetto OpenJDK senza testa.

Ovviamente, l'opzione 2 è la migliore a lungo termine, poiché risolve il problema per tutti e le opzioni 1 e 3 lo risolvono solo per te, tuttavia 1 e 3 sono più veloci.


1
Quel thread di bug non mi sembra molto promettente. Sembra che ci siano alcuni effetti collaterali da affrontare e il manutentore non sembra troppo ansioso di risolvere il problema. Probabilmente sarò egoista e sceglierò il Sun JDK.
Hanno Fietz,

1
Cosa devo fare per implementare l'opzione 3? Vedere serverfault.com/questions/755573 per la mia domanda.
equaeghe,

2

Non potresti semplicemente scaricare e installare Sun's JDK? Nessuna compilazione, nessun X11 richiesto. Lo preferisco alle opzioni confezionate.

chmod +x ~/jdk-6u14-linux-i586.bin
cd /usr
sudo mkdir java
cd java
sudo ~/jdk-6u14-linux-i586.bin
export JAVA_HOME=/usr/java/jdk1.6.0_14
export PATH=$JAVA_HOME/bin:$PATH

0

Ho il sospetto che avesse solo bisogno di aggiornare i suoi collegamenti ecc. Alternativi:

update-alternatives --set java /usr/lib/jvm/default-java/bin/java

(o qualcosa di simile)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.