Debian官方没有维护专门的Java软件包,所以不能直接用apt-get工具来安装。在Debian系统中要安装Java,有两种方式,一种是用传统方式;一种是Debian方式。

1. 传统方式

在 sun 下载了最新的 JDK,我下载的是 jdk-6u13-linux-i586.bin 并把该文件的属性改成可执行,直接执行该文件

# chmod +x jdk-6u13-linux-i586.bin

# ./jdk-6u13-linux-i586.bin

程序运行后会当前目录下生成一个名为 jdk1.6.0_13 的目录

把该目录拷贝到/usr/local/jdk1.6.0_13 ,并在系统初始化脚本中增加以下两个环境变量

export CLASSPATH=/usr/local/jdk1.6.0_13/lib

export JAVA_HOME=/usr/local/jdk1.6.0_13

用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

Debian安装JAVA环境(转载)的更多相关文章

  1. 安装 java环境 和 tomcat

    安装 java环境 和 tomcat -- JAVA部分 tar xf jdk-8u60-linux-x64.tar.gz cd /root/soft/jdk1.8.0_60 mkdir /usr/l ...

  2. 集群安装Java环境

    需要安装一个集群环境,发现全部要手动安装java.记录下安装Java环境的过程.虽然,依旧是挨个安装,但总算是有体系了. java 找到下载地址: https://www.oracle.com/tec ...

  3. 在CentOS上安装Java环境

    如何使用yum方式在CentOS上安装Java环境,系统以CentOS6.4为例. 工具/原料 Java JDK yum库 CentOS6.4 方法/步骤 1 查看CentOS自带JDK是否已安装. ...

  4. Linux下安装Java环境配置

    1.下载安装文件 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2. ...

  5. Ubuntu安装java环境

    Ubuntu安装java环境 1.添加ppa sudo add-apt-repository ppa:webupd8team/java sudo apt-get update 2.安装oracle-j ...

  6. Kali下安装Java环境

    <-----教你在Kali下安装Java环境-----> 1. 下载1.8u121的JAVA JDK 下载地址:http://java.sun.com/javase/downloads/i ...

  7. 如何安装java环境和如何配置java环境

    https://jingyan.baidu.com/article/0202781175839b1bcc9ce529.html java如今是一门十分热门的可跨平台面向对象的高级编程语言,那么作为学习 ...

  8. CentOS7安装JAVA环境

    安装JAVA环境我常用的有两种形式 1.下载tar包安装 2.下载rpm包直接安装 本篇内容就写这两种形式的安装方法: JAVA程序的下载地址:https://www.oracle.com/java/ ...

  9. 在 CentOS/Fedora 下安装 JAVA 环境

    介绍 本文介绍如何在 CentOS 7(6/6.5). Fedora.RHEL 上安装 Java.Java是一个流行的软件平台,允许您运行Java应用程序. 本文涵盖了以下Java版本的安装: Ope ...

随机推荐

  1. bzoj1648 [Usaco2006 Dec]Cow Picnic 奶牛野餐

    Description The cows are having a picnic! Each of Farmer John's K (1 <= K <= 100) cows is graz ...

  2. location.href IE6 下不起作用的罪魁祸首

    解决问题 在btn_publish函数内逻辑最后面加:return false;

  3. PHP代码,拒绝频繁访问

    一个网站性能有限,如果有人恶意去频繁对页面进行刷新,其实对服务器影响是很大的,导致资源使用非常高,直接影响到其他用户的体验. 那么对于这样的一些频繁访问,我们该如何去拒绝它呢? 我总结了两种方法:第一 ...

  4. vhd镜像格式及vhd-util工具应用

    概述 VHD 是微软虚拟磁盘文件格式,qemu和tapdisk2都能支持VHD镜像格式,不仅提供基本的虚拟机卷功能,还可提供磁盘快照.磁盘扩容等高级功能 vhd-util是个linux下的开源软件,通 ...

  5. hdu 1595 find the longest of the shortest(dijkstra)

    Problem Description Marica is very angry with Mirko because he found a new girlfriend and she seeks ...

  6. spring MVC做form提交Neither BindingResult nor plain target object for bean name 'command' available

    这两天在做spring3.0 MVC+hibernate3.2的练习中,做简单的form提交, 一直报java.lang.IllegalStateException: Neither BindingR ...

  7. 【Java基础】可变参数

    下面是一个简单的小程序: import java.util.Arrays; class lesson6 { public static void main(String[] args) { ,,,,, ...

  8. LINQ 基本子句之三 let

    let子句,可以作为临时变量储存表达式的结果,但是let子句一旦初始化后无法再次进行更改. 1. static void Main(string[] args) { string[] names = ...

  9. js/css 检测移动设备方向的变化 判断横竖屏幕

    js/css 检测移动设备方向的变化 判断横竖屏幕 方法一:用触发手机的横屏和竖屏之间的切换的事件 window.addEventListener("orientationchange&qu ...

  10. flex与js相互调用

    1.flex调用js方法 调用方法例如:ExternalInterface.call("UploadComplete",oldName,uidName,_dir+"/&q ...