第一杯咖啡----在Debian 上安装Java环境

blackdown 的jdk 总是比sun 慢了一拍,针对debian包更新太慢,非官方的java-package的生成的.deb不尽人意,一些常用的命令没有加入到path,本文主要参考debian java faq



1、获取jdk.

从sun的官方网站下载最新的jdk 1.5 update2, http://java.sun.com。注意,要下载解压版本。

# su root

切换到 超级用户(也可以用sudo 来取得超级用户权限),进入下载目录

# chmod a+x jdk-1_5_0_02-linux-i586.bin

# ./jdk-1_5_0_02-linux-i586.bin



同意协议.会得到一个jdk-1.5.0目录。

#mkdir /usr/lib/j2se

#mv jdk-1.5.0 /usr/lib/j2se/5.0

#cd /usr/lib

#ln -s /usr/lib/j2se/5.0 java



编辑/etc/mailcap文件,将其中的java web start设置移至文件顶部的,不然在update-mime,自定义的设置会被冲掉

# ----- User Section Begins ----- #

# ----- User Section Ends ----- #

改成如下:

# ----- User Section Begins ----- #

# Java Web Start



application/x-java-jnlp-file; /usr/lib/java/jre/bin/javaws %s


# ----- User Section Ends ----- #




2、解决系统java 依赖关系.

基本上已经安装好了。。。下面解决系统的依赖性。。。



#apt-get install java-common

这时在/usr/share/doc/java-common有debian java的详细文档:

debian-java-faq

debian-java-policy



#cd /usr/share/doc/java-common/dummy-packages/

里面有5 个文件:

java1-runtime-dummy.control

java2-compiler-dummy.control

java2-runtime-dummy.control

java-compiler-dummy.control

java-virtual-machine-dummy.control


首先请确定已经安装好了equivs

# equivs-build java1-runtime-dummy.control

# equivs-build java2-compiler-dummy.control

# equivs-build
java2-runtime-dummy.control

# equivs-build
java-compiler-dummy.control

# equivs-build
java-virtual-machine-dummy.control

生成5个。deb包。。。

#dpkg -i *.deb



#cp /usr/lib/java/jre/plugin/desktop/sun_java.desktop /usr/share/control-center-2.0/capplets/

编辑/usr/share/control-center-2.0/capplets/sun_java.desktop

修改java路径:

[Desktop Entry]
Name=Java
Comment=Java Control Panel
Exec=/usr/lib/java/bin/ControlPanel
Icon=/usr/lib/java/jre/plugin/desktop/sun_java.png
Terminal=0
Type=Application
Categories=Application;Settings;X-Sun-Supported;X-Red-Hat-Base;



这样就可以通过菜单启动java 控制台了。。。



3、使用alternatives将所有java 命令,man ,和plugin.

最后,为jdk的bin下的命令建立链接,为mozilla安装插件,新建一个shell文件,内容如下:



#!/bin/bash
JDK_HOME=/usr/lib/java

for i in $JDK_HOME/bin/*; do
altname=`basename $i`
echo "Processing $altname..."
echo ""

if [ -x "$i" -a -e "$JDK_HOME/man/man1/${altname}.1" ]
then
update-alternatives --verbose --install /usr/bin/$altname $altname $i 500
--slave /usr/share/man/man1/${altname}.1 ${altname}.1 $JDK_HOME/man/man1/${altname}.1
else
update-alternatives --verbose --install /usr/bin/$altname $altname $i 500
fi
done

update-alternatives --verbose --install /usr/lib/mozilla/plugins/libjavaplugin.so libjavaplugin.so $JDK_HOME/jre/plugin/i386/ns7/libjavaplugin_oji.so 500
#update-alternatives --install /usr/share/gnome/vfolders/Settings/sun-java.desktop sun-java.desktop /usr/lib/java/jre/plugin/desktop/sun_java.desktop 500



#sh your_shell



测试:

#java -version

会输出:

java version "1.5.0"

Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)

Java HotSpot(TM) Client VM (build 1.5.0-b64, mixed mode, sharing)

#man java

就可以查java的使用方法。。。



编写第一个java,和java打个招呼吧。


#文件名:你好.java

class 你好
{
public static void main(String[] args)
{
System.out.println("你好,java 世界!");
}
}


编译程序:

#javac 你好.java


运行程序:

#java 你好

屏蔽输出:

你好,java 世界!


中文问题,老话题了,改字体路径。

参见:


http://www.linuxsir.org/bbs/showthread.php?s=&threadid=124319&highlight=%BF%F2%BF%F2



(原文网址:http://blog.chinaunix.com/opera/showart.php?blogid=1096&id=2501)
附删除java环境链接的脚本:


#!/bin/bash
JDK_HOME=/usr/lib/java

for i in $JDK_HOME/bin/*; do
altname=`basename $i`
echo "Processing $altname..."
echo ""

if [ -x "$i" -a -e "$JDK_HOME/man/man1/${altname}.1" ]
then
update-alternatives --verbose --remove-all $altname
update-alternatives --verbose --remove-all ${altname}.1
else
update-alternatives --verbose --remove-all $altname
fi
done

update-alternatives --verbose --remove-all libjavaplugin_oji.so
#update-alternatives --verbose --remove-all sun-java.desktop

你可能感兴趣的:(java,jdk,Debian,J2SE,sun)