[转帖]硬盘直接引导Live CD安装JDK问题(解决)

C、C++和Java语言
回复
yoshubom
帖子: 233
注册时间: 2005-12-28 16:23
送出感谢: 0
接收感谢: 0

[转帖]硬盘直接引导Live CD安装JDK问题(解决)

#1

帖子 yoshubom » 2007-02-01 16:40

硬盘直接引导Live CD安装JDK问题(解决)


问题:

java: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory

Error: could not find libjava.so
Error: could not find Java 2 Runtime Environment.

大家好,我也出了这个问题,在论坛上找了一段时间的解决办法,发现出这个问题的基本上都是用LiveCD 或者是采用论坛上gnix_oag兄提供的在硬盘上直接引导LiveCD ISO+unionfs保存设置的方法来运行ubuntu。后来论坛上另一哥们也怀疑是unionfs的问题,他说他自己试了一下,将JDK安装在非 unionfs的文件系统(FAT32或ext2或ext3)中,就没有问题了。我自己尝试了一下,确实能够解决这个问题。以下是我的步骤:

1、下载JDK,直接到sun的网站下载(注意下载Linux self-extracting file版本的那个,文件名是jdk-1_5_0_09-linux-i586.bin)

2、将下载到的JDK移动到非unionfs的文件系统上,例如我的windows的E盘是FAT32的,我将下载的JDK拷贝到E盘(假设下载 JDK的目录是/tmp,那么执行命令sudo cp /tmp/jdk-1_5_0_09-linux-i586.bin /media/e_win,这里/media/e_win是我windows E盘的路径)

3、在E盘下执行这个JDK(如果不能执行,可能要给jdk-1_5_0_09-linux-i586.bin加上x),执行下面两个命令:(1) sudo cd /media/e_win;(2)sudo ./jdk-1_5_0_09-linux-i586.bin;这将会把该JDK在当前目录下展开到jdk1.5.0_09目录下。

4、到解压出来的JDK的bin目录下,执行以下./java,怎么样,发现直接就可以执行了吧。

5、然后执行sudo update-alternatives --verbose --install /usr/bin/java java /media/e_win/jdk1.5.0_09/bin/java 500 --slave /usr/share/man/man1/java.1 java.1 /media/e_win/jdk1.5.0_09/man/man1/java.1(注意,这里/media/e_win/jdk1.5.0_09是我自己的路径,你可能需要根据自己的路径进行修改)

6、然后执行sudo update-alternatives --config java,选择我们安装的java。执行java -version,怎么样,没问题了吧。

7、设置环境变量JAVA_HOME,CLASSPATH等。ok

总结:出现这个问题可能是unionfs的问题,我也只是猜测,因为对unionfs本身没有什么太多了解。



本人实践之后发现,其实NTFS格式的盘也可以。我用的是 JDK1.5.0_11 。
头像
gnix_oag
帖子: 1994
注册时间: 2005-05-19 18:38
来自: 湖南永州
送出感谢: 0
接收感谢: 1 次
联系:

#2

帖子 gnix_oag » 2007-02-02 0:02

希望ubuntu Desktop 使用 aufs 替代 unionfs
回复

回到 “C/C++/Java”