Deze pagina bevat informatie over en links naar het shell script update-sun-jre.
De huidige versie van dat script is 2.2.3.
Bekende bugs en problemen vind je hier.
Een shell script bedoeld om het ophalen en installeren van de Oracle (Sun) Java Runtime Omgeving te automatiseren.
In augustus 2011 heeft Oracle de licentie ingetrokken die het Linuxdistributies als Debian, Ubuntu en Linux Mint mogelijk maakte de Runtime Omgeving ingepakt en wel aan te leveren. Daardoor zijn recente veiligheidsupdates niet meer verspreid via de pakketbronnen. Als je versie 6u26 of eerder van de Sun Java pakketten gebruikt (sun-java6-bin, sun-java6-jre en sun-java6-plugin), loop je dus een veiligheidsrisico.
Je zou kunnen overwegen over te stappen op OpenJDK. Er zijn echter Java-applicaties die daar niet (goed) mee werken, dus het kan zijn dat je wel bij de Oracle/Sun versie moet blijven. In dat geval kan je de instructies op deze pagina volgen om zelf het pakket van http://www.java.com op te halen en te installeren, maar ook het hier beschikbare script ophalen en gebruiken.
Op een van de volgende manieren:
Dit programma is vrije software. Je kunt het herverspreiden en/of aanpassen onder de voorwaarden van de GNU Algemene Publieke Licentie (GNU General Public License) zoals gepubliceerd door de Free Software Foundation, hetzij versie 2 van de Licentie, hetzij - zo je wilt - enige latere versie.
Hoewel het script zelf onder de GPL valt, geldt dat niet voor wat je ermee ophaalt. Als je het script gebruikt, geef je daarmee aan dat je de Oracle Binary Code License Agreement for the Java SE Platform Products and JavaFX hebt gelezen en geaccepteerd.
Dit komt neer op het in een terminalvenster uitpakken van een opgehaald archiefbestand en het uitvoeren van het script. Voordeel is dat het snel is, nadeel dat het script niet echt wordt 'geïnstalleerd'. Bovendien blijft een eventueel aanwezige (verouderde) sun-java6-installatie op je systeem staan, zij het min of meer onzichtbaar. Als je hiervoor kiest, ga je als volgt te werk:
sh update-sun-jre.bin
sh update-sun-jre.bin -x
sudo ./update-sun-jre -v install
Het opgehaalde pakket is een tarball (met gzip gecomprimeerd tar-bestand) met een klein uitpakscript ervoor (head -n 26 update-sun-jre.bin
om de tekst van dat scriptje te bekijken). De tarball bevat twee bestanden: het script zelf en een andere tarball met ondersteunende bestanden (update-sun-jre-support.tar.gz). Die supporttarball moet je niet uitpakken, maar in dezelfde directory laten staan als het script.
De pakketbron levert een Debian-pakket met het script en dezelfde ondersteunende bestanden als in de supporttarball. Instellen is wat meer werk, maar levert wel een betere integratie met je systeem op. Bijkomende voordelen: een eventueel aanwezige verouderde sun-java6-installatie wordt geheel verwijderd en als je de pakketbron in je lijst laat staan, krijg je automatisch updates van het script. De werkwijze:
deb https://duinsoft.nl/pkg debs all
sudo wget -P /etc/apt/trusted.gpg.d/ https://duinsoft.nl/pkg/duinsoft.key.asc
sudo apt-get update
sudo apt-get install update-sun-jre
Het onder Ubuntu beschikbare script apt-add-repository gebruiken is niet aan te raden omdat dat script een paar onjuiste aannames doet.
Bovengenoemde keyserver keys.gnupg.net is maar een voorbeeld. Je kunt elke betrouwbare keyserver gebruiken. Als de apt-key-opdracht een foutmelding oplevert, probeer dan een van de servers van deze pagina.
Uiteraard kan je het Debian-pakket ook met apt-get download
ophalen van de pakketbron zonder het gelijk te installeren. Als je dat doet en vervolgens besluit het pakket alsnog te installeren met dpkg -iB of GDebi, dan levert dat ook een complete installatie op.
De kans bestaat echter dat GDebi ten onrechte meldt dat de installie is mislukt. Dat wordt dan veroorzaakt door een enigszins raadselachtige foutmelding van dpkg over het niet kunnen installeren van het pakket sun-java6-jre (dat zojuist is verwijderd). Dit heeft geen enkel nadelig effect op de installatie van update-sun-jre, maar het komt wel wat vreemd over...
Wil je het script verwijderen, dan hangt de te volgen werkwijze af van de manier waarop je hebt geïnstalleerd. Om een handmatige installatie ongedaan te maken, voer je de opdracht
sudo ./update-sun-jre -v remove
uit (de directory met het script open in een terminal!). Dit zal niet lukken als het script met behulp van een Debian-pakket is geïnstalleerd. In dat geval kan je bijvoorbeeld Synaptic of apt-get gebruiken (dpkg --remove zal niet werken). Je krijgt dan wel een andere Java-installatie voorgeschoteld: OpenJDK. Als je dat niet wilt, kan je ook beginnen met installeren van de sun-java6-plugin (als die nog in de pakketbronnen zit). De andere sun-java6-pakketten komen dan vanzelf mee en het scriptpakket wordt automatisch verwijderd.