Сначала необходимо установить apt-get JDK из репозитариев:
sudo apt-get install sun-java6-jdk
Загрузить JDK с http://download.java.net/jdk6/ на данный момент это Linux x64 самораспаковывающийся JDK файл
Переместить в директорию /usr/lib/jvm, сделать исполняемым и выполнить в консоли (с правами root):
cd /usr/lib/jvm
./jdk-6u12-ea-bin-b03-linux-amd64-22_dec_2008.bin
Создать симлинк:
ln -s jdk1.6.0_12 java-6.12-sun
Создать скрипт:
kate create-jvm-alternative.pl
Вставить следующее содержимое:
#!/usr/bin/perl
use strict;
# use this as template - we assume that you have java 6 installed
# its in the repo !
my $jvm_template="java-6-sun";
my $jvm_template_path="/usr/lib/jvm/java-6-sun";
# this is teh new jvm
my $jvm_name="java-6-sun-1.6.0.12";
my $jvm_alias="java-6.12-sun";
my $jvm_path="/usr/lib/jvm/java-6.12-sun";
my $jvm_priority=10600;
my $jvm_section="non-free";
open(JINFO_OUT, ">/usr/lib/jvm/.$jvm_alias.jinfo") or die "Can not write jinfo file !";
#write header
print JINFO_OUT "name=$jvm_name\n";
print JINFO_OUT "alias=$jvm_alias\n";
print JINFO_OUT "priority=$jvm_priority\n";
print JINFO_OUT "section=$jvm_section\n\n";
my @lines = ();
open(IN, "/usr/lib/jvm/.$jvm_template.jinfo") or die "Can note read jinfo template!";
@lines = <IN>;
close(IN);
my @new_config = ();
foreach(@lines){
if($_=~ /$jvm_template_path/){
chomp($_);
$_ =~ s/$jvm_template_path/$jvm_path/;
push(@new_config, $_);
print JINFO_OUT "$_\n";
}
}
close(JINFO_OUT);
foreach(@new_config){
my @split = split(' ', $_);
system("update-alternatives --install /usr/bin/@split[1] @split[1] @split[2] $jvm_priority");
}
Сохранить и закрыть kate.
Выполнить:
perl create-jvm-alternative.pl
Открыть в kate файл .java-6.12-sun.jinfo:
kate .java-6.12-sun.jinfo
Заменить (используя меню "Правка"->"Заменить")
/usr/lib/jvm/java-6.12-sun/jre/plugin/amd64/ns7/libjavaplugin_oji.so
на
/usr/lib/jvm/java-6.12-sun/jre/lib/amd64/libnpjp2.so
Сохранить и закрыть kate.
Добавить в начале файла /etc/bash.bashrc строки:
#JAVA
if [ -z "$JAVA_HOME" ] ; then
JAVA_HOME="/usr/lib/jvm/java-6.12-sun/jre"
fi
export JAVA_HOME
if [ -z "$JDK_HOME" ] ; then
JDK_HOME="/usr/lib/jvm/java-6.12-sun"
fi
export JDK_HOME
export PATH=$JAVA_HOME/bin:$PATH
Перезагрузка.
Добавить в начале файла /etc/jvm строчку:
/usr/lib/jvm/java-6.12-sun
Добавить в начале файла /etc/eclipse/java_home строчку:
/usr/lib/jvm/java-6.12-sun
Выполнить:
update-alternatives --config java
и выбрать номер альтернативы /usr/lib/jvm/java-6.12-sun/jre/bin/java
Установить новой java подчиненных (slave):
update-alternatives --install /usr/bin/java java ${JAVA_HOME}/jre/bin/java \
10600 \
--slave /usr/share/man/man1/java.1.gz java.1.gz ${JAVA_HOME}/man/man1/java.1 \
--slave /usr/bin/java_vm java_vm ${JAVA_HOME}/jre/bin/java_vm \
--slave /usr/bin/javac javac ${JAVA_HOME}/bin/javac \
--slave /usr/bin/javaws javaws ${JAVA_HOME}/bin/javaws
Далее установка плагинов, имеет смысл только для 64-битных программ.
Почему-то это приходится делать вручную:
ln -s -f /usr/lib/jvm/java-6.12-sun/jre/lib/amd64/libnpjp2.so /etc/alternatives/firefox-javaplugin.so &&\
ln -s -f /usr/lib/jvm/java-6.12-sun/jre/lib/amd64/libnpjp2.so /etc/alternatives/iceape-javaplugin.so &&\
ln -s -f /usr/lib/jvm/java-6.12-sun/jre/lib/amd64/libnpjp2.so /etc/alternatives/iceweasel-javaplugin.so &&\
ln -s -f /usr/lib/jvm/java-6.12-sun/jre/lib/amd64/libnpjp2.so /etc/alternatives/mozilla-javaplugin.so &&\
ln -s -f /usr/lib/jvm/java-6.12-sun/jre/lib/amd64/libnpjp2.so /etc/alternatives/midbrowser-javaplugin.so &&\
ln -s -f /usr/lib/jvm/java-6.12-sun/jre/lib/amd64/libnpjp2.so /etc/alternatives/xulrunner-javaplugin.so &&\
ln -s -f /usr/lib/jvm/java-6.12-sun/jre/lib/amd64/libnpjp2.so /etc/alternatives/xulrunner-1.9-javaplugin.so
и это тоже (лучше по одному, вдруг не все программы установлены или отличается от моего место расположения плагинов):
mv -f /usr/bin/firefox-javaplugin.so /usr/lib/firefox/plugins/firefox-javaplugin.so &&\
mv -f /usr/bin/iceape-javaplugin.so /usr/lib/iceape/plugins/iceape-javaplugin.so &&\
mv -f /usr/bin/iceweasel-javaplugin.so /usr/lib/iceweasel/plugins/iceweasel-javaplugin.so &&\
mv -f /usr/bin/mozilla-javaplugin.so /usr/lib/mozilla/plugins/mozilla-javaplugin.so &&\
mv -f /usr/bin/midbrowser-javaplugin.so /usr/lib/midbrowser/plugins/midbrowser-javaplugin.so &&\
mv -f /usr/bin/xulrunner-javaplugin.so /usr/lib/xulrunner/plugins/xulrunner-javaplugin.so &&\
mv -f /usr/bin/xulrunner-1.9-javaplugin.so /usr/lib/xulrunner-1.9.0.5/plugins/xulrunner-1.9-javaplugin.so
Тест:
java -version
Получаю:
java version "1.6.0_12-ea"
Java(TM) SE Runtime Environment (build 1.6.0_12-ea-b03)
Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
Проверка в браузере:
Проверка установки Java
http://www.games.ru/online/
Отправить комментарий