首页 | 博客群 | 公社 | 专栏 | 论坛 | 图片 | 资讯 | 注册 | 帮助 | 博客联播 | 随机访问
升级FreeBSD的ports- -| 回首页 | 2006年索引 | - -看图识RAID

在FreeBSD 6.0上安装linux-sun-jdk1.5.0

关键词FreeBSD    Java                                          



作者:Xinsoft
日期:2006-02-09
出处:应用之美
网址:http://xinsoft.blogchina.com/4419305.html

1、下载所需的文件

http://www.sun.com/software/java2/download.html 下载:

SCSL Source file,   jdk-1_5_0-src-scsl.zip
SCSL Binaries file, jdk-1_5_0-bin-scsl.zip

在下载前可能需要注册一个账户。

http://www.eyesbeyond.com/freebsddom/java/jdk15.html 下载:

bsd-jdk15-patches-2.tar.bz2

http://java.sun.com/j2se/1.5.0/download.jsp下载:

jdk-1_5_0_06-linux-i586.bin


将上面这 4 个文件复制到 /usr/ports/distfiles/

2、安装

Xinsoft-cisiBSD# cd /usr/ports/java/linux-sun-jdk1.5.0
Xinsoft-cisiBSD# make install clean

3、环境变量及Linux兼容环境的设置

Xinsoft-cisiBSD# mkdir /usr/compat/linux/proc
Xinsoft-cisiBSD# ee /root/.cshrc

# added by root [Xinoft] 2006-02-09 01:54:00
# for java
# Block_JAVA :: Begin

set JAVA_HOME = (/usr/local/linux-sun-jdk1.5.0)

setenv  JAVA_HOME       ${JAVA_HOME}
setenv  CLASSPATH       .:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
setenv  PATH            ${PATH}:${JAVA_HOME}/bin

kldload linprocfs
mount -t linprocfs linprocfs /compat/linux/proc

# Block_JAVA :: End


Xinsoft-cisiBSD# source /root/.cshrc


4、检验

Xinsoft-cisiBSD# java -version
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode)


5、注意

注意在 /root/.cshrc 中有这样两句:

kldload linprocfs
mount -t linprocfs linprocfs /compat/linux/proc


如果不加上这两句,在运行java时会有这样的报错信息:

Xinsoft-cisiBSD# java -version
Java HotSpot(TM) Client VM warning: Can't detect initial thread stack location - find_vma failed
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode)


Java出现这个警告的主要原因是找不相应的进程的信息。因为是Linux兼容模式,Linux下的/proc实际上给映射到了FreeBSD下的/compat/linux/proc目录下,这实际上也是一种文件系统,在FreeBSD下称为linprocfs,默认的时候并没有给mount起来。所以在运行Java前一定要先把/compat/linux/proc给mount起来。

很多资料中介绍的解决方法如下:

1、在/etc/fstab 中添加一行:
linprocfs       /compat/linux/proc  linprocfs   rw  0   0

2、打入命令:
mount /compat/linux/proc/

但是我这样做却导致FreeBSD启动失败。后来在一些文档中找到了以下解决方法,于是彻底解决了这个问题:

kldload linprocfs
mount -t linprocfs linprocfs /compat/linux/proc

【作者: 小咪的爸爸】【访问统计:】【2006年02月10日 星期五 09:35】【注册】【打印

搜索

Google

Trackback

你可以使用这个链接引用该篇文章 http://publishblog.blogchina.com/blog/tb.b?diaryID=4419305

博客手拉手

回复

- 评论人:zxpxyz   2007-07-18 14:07:15   

linux下也出现了这个问题了。不知道java要在/proc下面干什么……

- 评论人:钟爱兰一生   2006-03-03 02:43:35   

不是说FreeBSD对Java支持得很不好吗?你是怎样考虑的?

验证码:   
评论内容: