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

摘要:
#Apt getinstalljavacommon现在在/usr/share/doc/java-common:debian java faqdebian java policy#cd/usr/share/doc/java common/dummby packages/中有debianjava的详细文档。其中有五个文件:java1 runtime dummy。controljava2编译器伪。controljava2运行时虚拟。controljava编译器伪。controljava虚拟机虚拟机。control equivs buildjava1运行时E-dummy。control#equivsbuildjava2编译器伪。control#equivsbuildjava2运行时伪。control#equivsbuildjava编译器伪。control#equivsbuildjava虚拟机虚拟机。控制#dpkg-i*。deb#cp/usr/lib/java/jre/plugin/desktop/sun_java。桌面/usr/share/control-center-2.0/applets/edit/usr/share/control-center-2.0/applet/sun_java。桌面修改java路径:[DesktopEntry]Name=JavaComment=JavaControlPanelExec=/usr/lib/java/bin/ControlPanelIcon=/usl/lib/java/jre/plugin/Desktop/sun_java。pngTerminal=0Type=ApplicationCategories=应用程序;设置;X-Sun-支持;X-Red-Hat-Base;这样,您可以通过菜单启动java控制台…编写第一个java并向java问好。Blogid=1096&id=2501)用于删除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

免责声明:文章转载自《第一杯咖啡在Debian 上安装Java环境》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇SwitchButton 开关按钮 的多种实现方式如何使用记事本编程,并生成exe下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

在(U)EFI环境下重装Grub2

本文链接:https://blog.csdn.net/ytingone/article/details/59209526前段时间重装了系统,导致Grub2的引导消失,所以现在需要进行恢复。首先需要使用livecd或者是其它工具进入rescure环境,然后按默认操作chroot到/mnt/sysimage我首先尝试使用经典方法:grub2-install /...

简单的linux内核移植知识

Linux内核的移植(ARM)总结 虽然没有干过这个工作,不过听说内核移植从来就不是一个人的事。通常都是由一个百人的团队去做的,所以这里讲的仅仅是最简单的一些。往往不去关心原理,只是懂得如何操作罢了。 知识储备 在学习移植之前,需要知道的知识和概念,操作系统启动的过程,bootloader,内核,根文件系统等。 计算机结构:两层结构:软件,硬件。 四层结构:...

linux/ubuntu下free查看内存占用大的解释_乌哥的家常菜_百度空间

大家看看我的内存占用情况:$ free -mtotal used free shared buffers cachedMem: 1908 1844 64 0 56 689-/+ buffers/cache: 1098 810Swap: 3904 0 3904一开始吓了我一跳,我开了个虚拟机分了512m内存,别的没开啥大程序,怎么那个free就变成64m那...

Linux命令之basename 命令

用途 返回一个字符串参数的基本文件名称。 语法 basename String [ Suffix ] 描述 basename 命令读取 String 参数,删除以 /(斜杠) 结尾的前缀以及任何指定的 Suffix 参数,并将剩余的基本文件名称写至标准输出。basename 命令应用以下创建基本文件名称的规则: 如果 String 参数是 //(双斜杠)...

Linux运维之shell脚本

一、bash漏洞 1)bash漏洞 bash漏洞是控制Linux计算机命令提示符的软件中存在的漏洞。 bash是一个为GNU计划编写的Unix shell。它的名字是一系列缩写:Bourne-Again SHell ,Bourne shell是一个早期的重要shell, 由史蒂夫·伯恩在1978年前后编写,并同Version 7 Unix一起发布。 网络安...

maven设置jdk版本

两种方式: 一、可以修改 MAVEN 的 setting.xml 文件,统一修改。 <profiles><profile><id>jdk-1.6</id><activation><activeByDefault>true</activeByDefault><jdk&g...