安装和配置 Java J2SE Development Kit(JDK)

整理:懒猫 [ stephencat AT 126.com ],整理于 2005 年 10 月 14 日。
来自:LinuxSir.Org
摘要:不少用户希望使用 Sun Java JDK/JRE 代替系统自带和默认使用的 Java虚拟机 GCJ 来运行、调试 Java 应用程序。本文将为您解决这个问题。

适用发行版:使用 GCJ 作为默认 Java 环境的发行版,如 Fedora Core 4

主要内容索引

  • 安置 Java
  • 创建快捷方式以取代 GCJ
  • 配置环境变量
  • 优化中文显示
  • 配置浏览器插件
  • JAVA 控制台的调用

一、下载JDK

1. 下载

从这里可以找到最新的 JDK:

http://java.sun.com/

 

根据自己的机器来下载对应的版本,例如

jdk-1_5_0_05-linux-i586.bin

 

这是 J2SE Development Kit 1.5 update 5 for Linux 的 sh 自解压执行脚本。里面已经包含安装压缩包。

2、释放软件包

查看当前目录下所有文件

[root@localhost sunjava]# ls

jre-1_5_0_04-linux-i586.bin

 

执行 sh 自解压脚本

[root@localhost sunjava]# sh jre-1_5_0_04-linux-i586.bin

Do you agree to the above license terms? [yes or no] yes

 

再次查看当前目录下所有文件

[root@localhost sunjava]# ls

jre1.5.0_04 jre-1_5_0_04-linux-i586.bin

 

事实上 sh 脚本会自释放一个 名为 jdk1.5.0_05 的文件夹到当前目录下

二、配置 Java 编译、运行环境

1. 安置 Java

把 jdk1.5.0_05 文件夹移动(或者复制)到 /usr/local 目录中

[root@localhost sunjava]# mv jdk1.5.0_05 /usr/local/

 

2. 创建快捷方式以取代 GCJ

制作 java 和 javac 的快捷方式(静态链接),以代替 gcj。

#cd /usr/bin

#ln -s -f /usr/local/jdk1.5.0_05/jre/bin/java

#ln -s -f /usr/local/jdk1.5.0_05/bin/javac

 

ln 命令的 -f 参数的作用是强制覆盖原来已经存在的 /usr/local/java 静态链接文件。由于 jdk 目录下的 bin 文件夹内容可以代替 /jdk1.5.0_05/jre/bin 的内容,因而也可以直接使用 /jdk1.5.0_05/bin 这个路径。

注意:这个步骤并没有把 GCJ 从您的电脑中彻底删除。您仍然可以使用 whereis gcj 命令找到它,并在需要的时候使用它。

3. 配置环境变量

方法一:独立终端用户的个性化配置

编辑当前用户的.bashrc,即:

$gedit ~/.bashrc

 

或者

#gedit /home/xxxx/.bashrc

 

加入如下五行:

JAVA_HOME=/usr/local/jdk1.5.0_05
JAVA_BIN=/usr/local/jdk1.5.0_05/bin
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH

 

方法二:适用于所有用户 (未经测试)

#gedit /etc/profile.d/java.sh

 

文件内容如下:

export JAVA_HOME=/usr/local/jdk1.5.0_05
export JAVA_BIN=/usr/local/jdk1.5.0_05/bin
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

 

4. 优化中文显示

加一个字体simsun.ttf

在 /usr/local/jdk1.5.0_05/lib 中建立文件夹 fonts ,再在其下建立文件夹 fallback
在 /usr/local/jdk1.5.0_05/jre/lib/fonts/ 中建立文件夹 fallback

然后拷字体 simsun.ttf 到这两个目录,或者把simsun.ttc 复制成simsun.ttf也行,然后放到这两个目录

5. 配置浏览器插件

这里介绍安装 Java 的浏览器支持插件。

比如我用 firefox 浏览器,则为libjavaplugin_oji.so建一个链接到firefox 相对应的目录中的plugins 目录中,其它浏览器同理;

[root@localhost plugins]# cd /usr/lib/firefox-1.0.6/plugins/

# ln -s /usr/local/jdk1.5.0_05/jre/plugin/i386/ns7/libjavaplugin_oji.so .

 

6. JAVA 控制台的调用

[someuser@localhost ~]# /usr/local/jdk1.5.0_05/jre/bin/ControlPanel

 

后记

本文内容大部分来自:《JRE 安装和配置,以适合JAVA程序运行所具备的环境》(作者:北南南北) ,再结合论坛讨论结果整理完成,在 Fedora Core 4 上测试通过。

帮助太大了,网上看了半天就这篇对中文支持写

fedora6 + jdk 1.5

谢谢

解决了困扰我好几天的问题,现在java显示中文不乱码了
我用的是fc5+jdk1.5.0_06

这篇文章对我帮助很大,但是我安装配置了jdk1.5

这篇文章对我帮助很大,但是我安装配置了jdk1.5和tomcat5.0.28,自己的jsp网站放上也能运行,就是不能发表文章,我在as3下同样的配置就没问题,这是为什么啊,FC4有什么特别设置吗?

Fedora

Fedora 就是个垃圾!!!!

= -

只有懦夫才会做匿名谩骂的下三流事情

请关注!控制台的调用

按照上面的方法安装,测试
[root@songh ~]#javac Hello.java
[root@songh ~]#java Hello 都正常!调用控制台时发生错误,如下:

[root@songh ~]# /usr/local/jdk1.5.0_05/jre/bin/ControlPanel
Exception in thread "main" java.lang.UnsatisfiedLinkError: /usr/local/jdk1.5.0_0 5/jre/lib/i386/libdeploy.so: /usr/local/jdk1.5.0_05/jre/lib/i386/libdeploy.so: c annot restore segment prot after reloc: Permission denied
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1647)
at java.lang.Runtime.load0(Runtime.java:769)
at java.lang.System.load(System.java:967)
at com.sun.deploy.config.UnixConfig.loadLibDeploy(UnixConfig.java:41)
at com.sun.deploy.config.UnixConfig.(UnixConfig.java:26)
at com.sun.deploy.config.ConfigFactory.newInstance(ConfigFactory.java:11 )
at com.sun.deploy.config.Config.getInstance(Config.java:564)
at com.sun.deploy.config.Config.(Config.java:580)
at com.sun.deploy.util.DeployUIManager.setLookAndFeel(DeployUIManager.ja va:102)
at com.sun.deploy.panel.ControlPanel.(ControlPanel.java:30)
[root@songh ~]#

偶很菜!

调用控制台时发生错误,SELinux 的原因

I also had to patch the SELinux policy by upgrading the selinux-policy-targeted RPM. You can download the latest version from http://download.fedora.redhat.com/pub/fedora/linux/core/updates/4/i386/. If you don't upgrade to a newer version you will get the
this error.
if you update selinux like this,everything is ok
rpm -Uvh selinux-policy-targeted-1.25.2-4.noarch.rpm