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