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. Minimum Depth of Binary Tree 解答

    Question Given a binary tree, find its minimum depth. The minimum depth is the number of nodes along ...

  2. UVA 712-S-Trees(满二叉树的简单查询)

    题意:给一棵满二叉树,叶子节点赋予权值,0或者1,对于每个查询输出叶子节点的权值,每个查询0代表往左走,1代表往右走,这题坑的地方是层的访问顺序,如第二组测试,由上到下依次是x3,x1,x2,假如给一 ...

  3. 449A - Jzzhu and Chocolate 贪心

    一道贪心题,尽量横着切或竖着切,实在不行在交叉切 #include<iostream> #include<stdio.h> using namespace std; int m ...

  4. HTML高级标签(2)————窗体分帧(2)————后台管理页面

    使用frameset进行窗体分帧.构建简易的后台页面.这篇博客就作为一个简易后台管理页面的实战演练. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd3px ...

  5. JS判断是不是Decimal类型(正则实现)

    备忘: function isDecimal(item) { var obj = $(item); if (obj.length > 0) { if ($(obj).val() != null ...

  6. js继承 prototype和constructor

    function a(){                 this.name="aaa";             }             function b(){     ...

  7. ASP.NET通用权限组件实现一

    沙发(SF)通用权限验证组件 开篇 上一篇提到了通用权限的设计思路,根据设计思路一步一步的来实现一个相对通用的权限验证组件.在VS2010下用C#语言基于.net framework2.0框架实现具体 ...

  8. Struts2 校验

    Struts2校验格式: actionName-methodName-invalidation.xml  该配置文件必须和action类在同一个包下. <?xml version="1 ...

  9. listview滚动到底部

    方法一: // msgListView是ListView控件 // adapter是ListView绑定的Adapter,如果不方便直接使用,也可以通过ListView的getAdapter()方法获 ...

  10. mac10.9 设置vim tab

    vimrc系统文件目录 /usr/share/vim 在vimrc中添加以下代码后,重启vim即可实现按TAB产生4个空格:set ts=4  (注:ts是tabstop的缩写,设TAB宽4个空格)s ...