http://blog.csdn.net/gongora/archive/2009/05/15/4190469.aspx
Debian官方没有维护专门的Java软件包,所以不能直接用apt-get工具来安装。在Debian系统中要安装Java,有两种方式,一种是用传统方式;一种是Debian方式。
1. 传统方式
在 sun 下载了最新的 JDK,我下载的是 jdk-6u13-linux-i586.bin 并把该文件的属性改成可执行,直接执行该文件
SUN:http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html
# chmod +x jdk-6u13-linux-i586.bin
# ./jdk-6u13-linux-i586.bin
程序运行后会当前目录下生成一个名为 jdk1.6.0_13 的目录
把该目录拷贝到/usr/local/jdk1.6.0_13 ,并在系统初始化脚本中增加以下两个环境变量
export JAVA_HOME=/usr/local/jdk1.6.0_13
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
用java -version命令进行测试
使用传统方式安装的java没有归并到Debian软件包体系中,所以在Debian的软件包数据库中不会存在java的依赖关系信息。且不能用Debian的软件包管理程序进行管理,只能手工维护。也就是说,如果我们要删除java,只能手工删除目录和环境变量
2.Debian方式
通过java-package包提供的make-jpkg程序,从SUN官方的java软件包生成一个Debian软件包
先安装 java-package 、 fakeroot
# apt-get install java-package
# apt-get install fakeroot
下载官方的java软件包,并用以下命令生成Debian格式的java软件包。注意,make-jpkg程序不能在root环境下运行,我们要使用fakeroot程序。
# cp jdk-6u13-linux-i586.bin /home/gongora/
# chown gongora jdk-6u13-linux-i586.bin
# su gongora
# fakeroot make-jpkg jdk-6u13-linux-i586.bin
遇到一个错误:
Creating temporary directory: /tmp/make-jpkg.uVWRTO8655
Loading plugins: blackdown-j2re.sh blackdown-j2sdk.sh common.sh ibm-j2re.sh ibm-j2sdk.sh j2re.sh j2sdk-doc.sh j2sdk.sh j2se.sh sun-j2re.sh sun-j2sdk-doc.sh sun-j2sdk.sh
Detected Debian build architecture: i386
Detected Debian GNU type: i486-linux-gnu
No matching plugin was found.
Removing temporary directory: done
网上查了下 发现原来是java-package的安装脚本不能识别最新版jdk安装文件的文件名
/usr/share/java-package/sun-j2sdk.sh,里面有一段
"jdk-6u"[0-9]"-linux-i586.bin") # SUPPORTED
j2se_version=1.6.0+update${archive_name:6:1}${revision}
j2se_expected_min_size=130
found=true
即用来识别jdk1.6的安装bin文件,但请注意"jdk-6u"[0-9]"-linux-i586.bin"这一句导致它只能识别jdk-6u9版本以下的.bin文件
将此句改成"jdk-6u"[0-9][0-9]"-linux-i586.bin")
重新打包 OK
在当前目录下就会生成一个Debian软件包 sun-j2sdk1.6_1.6.0+update1_i386.deb
以root身份安装该软件包
# su root
# dpkg –i sun-j2sdk1.6_1.6.0+update1_i386.deb
最后设置java的环境变量, 修改 /etc/profile 在 最后 增加
PATH=/usr/lib/j2sdk1.6-sun/bin:$PATH
JAVA_HOME=/usr/lib/j2sdk1.6-sun/
CLASSPATH=.:/usr/lib/j2sdk1.6-sun/jre/lib
export PATH
export JAVA_HOME
export CLASSPATH
OK 安装完成
==========
参考:
http://www.ringkee.com/note/opensource/debian/ch09s28.html#id2903080
http://forum.ubuntu.org.cn/viewtopic.php?f=88&t=163760