ubuntu 12.04 LTS 版eclipse svn插件subclipse安装报Failed to load JavaHL Library错误

在Ubuntu 12.04 下, eclipse svn插件subclipse安装一般会遇到两个问题:
1)Failed to load JavaHL Library.

These are the errors that were encountered:
no libsvnjavahl-1 in java.library.path
no svnjavahl-1 in java.library.path
no svnjavahl in java.library.path
java.library.path = /usr/lib/jni

这里有官方的解决这个问题的指导:http://subclipse.tigris.org/wiki/JavaHL

按照以前的装法

1、sudo apt-get install libsvn-java

该命令会产生libsvnjavahl-1.so文件。

(64位操作系统该文件在/usr/lib/x86_64-linux-gnu/jni/目录下,如果是32位操作体系则在/usr/lib/i386-linux-gnu/jni/目录下。

2、eclipse.ini中增加参数(该文件在eclipse目录中)

-vmargs
-Dosgi.requiredJavaVersion=1.5
-Djava.library.path=/usr/lib/jni

其实eclipse默认使用的library path就是/usr/lib/jni目录,该目录下还有其他java native的实现。所以不能为了解决subclipse的问题,而修改-Djava.library.path的值,应该把需要的文件软链接到默认的library path下(即/usr/lib/jni下)。所以请按照第三步来做。

3、把libsvnjavahl-1.so文件软链接到/usr/lib/jni下

64位操作系统请用这个命令:

sudo ln -s /usr/lib/x86_64-linux-gnu/jni/libsvnjavahl-1.so /usr/lib/jni/libsvnjavahl-1.so

32位操作系统请用这个命令:

sudo ln -s /usr/lib/i386-linux-gnu/jni/libsvnjavahl-1.so /usr/lib/jni/libsvnjavahl-1.so

4、重启eclipse
2) ubuntu Incompatible JavaHL library loaded.  1.7.x or later required

JavaHL 版本过低错误,Ubuntu 12.04中,通过 $ apt-get install libsvn-java 命令安装的版本是1.6.x

如果你的eclipse是3.7.2 默认安装的subclipse 是 1.8.x 版本的,他要求 JavaHL 是 1.7 以上。

所以需要先卸载你刚安装的libsvn-java,然后再安装1.7版的libsvn-java,使用如下的命令安装:

sudo apt-get purge libsvn-java

sudo add-apt-repository ppa:dominik-stadler/subversion-1.7

sudo apt-get update sudo apt-get install libsvn-java

安装完成后,重启,稍等一会,如果没弹出报错的对话框,则成功了;如果弹出对话框说有bug需要把xxxx的功能禁用掉,那你可以直接点ok,重启后试试subclipse的功能,如果没问题就ok了。

如果重启后还是报错,就需要你卸载掉 subclipse  换成 1.6.x 版本了(http://subclipse.tigris.org/update_1.6.x)。


转自:http://rongmayisheng.com/post/ubuntu-12-04-lts-%E7%89%88eclipse-svn%E6%8A%A5failed-to-load-javahl-library

你可能感兴趣的:(ubuntu 12.04)