Ubuntu16.04 Eclipse 安装 SVN 插件 subclipse 时 JavaHL 报错

系统环境:
Ubuntu 16.04 64bit
Eclipse Neon for J2EE
JDK 8
svn服务器端版本 1.7

首先检查svn服务器版本, 如果svn服务器版本比svn客户端版本低, 一定是链接不上的!

安装 SVN 插件 subclipse 时 JavaHL 报错.
网上搜索后, 似乎只有 Mac OS X 和 Ubuntu 系统下的 Eclipse 才有这个问题.

JavaHL - 负责调用SVN的接口, 通过它来满足 Eclipse 中使用SVN的需求(在 Ubuntu 软件源里的包名叫libsvn-java)

同类软件还有 SVNKit. 但是建议使用 JavaHL , 不建议使用 SVNKit . 后者不稳定, 可能损坏SVN仓库.

subclipse 版本和 JavaHL版本对应关系 SubclipseJavaHL
1.10.x   1.8.x  
1.8.x   1.7.x  
1.6.x   1.6.x  
解决 JavaHL 报错 失败 - 使用 Ubuntu 16.04 自带源

直接
sudo apt install libsvn-java
显示:

需要下载 556 kB 的归档。 解压缩后会消耗 1,062 kB 的额外空间。 获取:1 xenial/universe amd64 libsvn-java amd64 1.9.3-2ubuntu1 [556 kB] 已下载 556 kB,耗时 0秒 (961 kB/s) 正在选中未选择的软件包 libsvn-java。 (正在读取数据库 ... 系统当前共安装有 290230 个文件和目录。) 正准备解包 .../libsvn-java_1.9.3-2ubuntu1_amd64.deb ... 正在解包 libsvn-java (1.9.3-2ubuntu1) ... 正在设置 libsvn-java (1.9.3-2ubuntu1) ...

说明 Ubuntu 16.04 自带源的libsvn-java(JavaHL)版本是1.9.3, 不符合 subclipse 的要求

失败 - 添加 JavaHL 1.8.x 的源

Ubuntu16.04 自带软件源的 JavaHL 还是1.9版本的, subclipse 1.10.x 严格要求使用 JavaHL 1.8.x, 所以我们需要添加 JavaHL 1.8.x 的源

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

sudo apt-get update
报错:

W: 仓库 “ xenial Release” 没有 Release 文件。 N: 无法认证来自该源的数据,所以使用它会带来潜在风险。 N: 参见 apt-secure(8) 手册以了解仓库创建和用户配置方面的细节。 E: 无法下载 404 Not Found E: 部分索引文件下载失败。如果忽略它们,那将转而使用旧的索引文件。

其中, xenial是 Ubuntu 16.04 的版本名. 很明显,
dominik-stadler/subversion-1.8 没有 Ubuntu 16.04 的版本.

事实上, dominik-stadler/subversion-1.7 也没有Ubuntu 16.04 的版本, 更不用说dominik-stadler/subversion-1.6了.

结论是, 目前(2016-06-26)在 Ubuntu 16.04 上不能使用subclipse 1.10.x 或 更早版本.

成功 - 使用同类插件代替 Subclipse 使用 Subversive 4.0 代替 Subclipse

Subversive 4.0 功能一样强大, 最重要的是它支持JavaHL 1.9.x

在Eclipse菜单栏–>Help–>Eclipse Marketplace
搜索框中输入Subversive

点击安装, 进入安装向导, 一直下一步, 同意软件版权声明后安装完成, 重启 Eclipse

这时会报错:
JavaHL not Found

配置Eclipse启动项

我们已经通过Ubuntu 16.04 的自带源安装了 JavaHL( libsvn ) 1.9.3

Ubuntu 12.04以后,JavaHL Library的位置由原来 /usr/lib/jni 改为了/usr/lib/x86_64-linux-gnu/jni

打开eclipse安装目录下的eclipse.ini文件,将原来配置的
增加一行:

-Djava.library.path=/usr/lib/x86_64-linux-gnu/jni

最终文件内容如下:

-startup plugins/org.eclipse.equinox.launcher_1.3.200.v20160318-1642.jar --launcher.library plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.400.v20160518-1444 -product org.eclipse.epp.package.jee.product --launcher.defaultAction openFile -showsplash org.eclipse.platform --launcher.defaultAction openFile --launcher.appendVmargs -vmargs -Dosgi.requiredJavaVersion=1.8 -Djava.library.path=/usr/lib/x86_64-linux-gnu/jni -XX:+UseG1GC -XX:+UseStringDeduplication -Dosgi.requiredJavaVersion=1.8 -Xms256m -Xmx1024m

重启Eclipse, 可以看到 Windows –> Preferences –> Team –> SVN
右侧有好几个标签, 选择 SVN Connector标签, 下拉菜单已经是 JavaHL 1.9.3 了

Ubuntu 15.04中使用Eclipse 4.4、Java 8以及WTP

Ubuntu 14.04 LTS安装Java 8和Eclipse 4.4 

Ubuntu 16.04安装Eclipse笔记 :

Ubuntu 16.04安装Eclipse

Ubuntu 16.04安装Eclipse并创建桌面快捷方式 

如何在Ubuntu 14.04中安装最新版Eclipse 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/13250.html