安装 SVN 插件 subclipse 时可能遇到问题

subclipse 安装完成后,当我们选择使用 的时候还是会提示:javaHL not available,

SVN接口选择

client:选择第一个SVNkit或者JavaHL

官方建议使用JavaHL作为client,稳定性,速度性都比SVNKit好很多,使用SVNKit有可能出现未知的错误,使你的项目数据受损。

JavaHL是通过jni的方式来调用本地的SVN库,所以说速度快,稳定可靠

JavaHL 原来官网 http://subclipse.tigris.org/wiki/JavaHL

目前已经全部转移到github 说明很详细

https://github.com/subclipse/subclipse/wiki

JavaHL是什么?

JavaHL 是Subversion项目的一部分。具体地说,它是java语言结合 Subversion 的 API。提供了一个分层的API设计,作为本地库(DLL,Linux下表现为 .so)。Subversion 命令行只是对这个API的简单应用。API 提供了丰富的功能,同时保持向后兼容性。这就是为什么有这么多伟大的Subversion客户端和工具可用,因为有一个丰富且稳定的API提供了你所需要的所有功能。

Subversion 使用 C语言编写,提供优秀的跨平台支持,也因为C语言编写的库很容易被其他语言所调用。Subversion 项目提供并维护 Java, Perl, Python  和 Ruby 等语言与其交互的功能。后三者是通过SWIG(Simplified Wrapper and Interface Generator ,一个非常优秀的开源工具,支持您将 C/C++ 代码与任何主流脚本语言相集成)库和语言自身调用本地库语言接口的能力实现的。JavaHL 是“高级别”的API,提供自定义编写的C++代码作为java代码和本地库之间的JNI桥梁。这样的设计使我们能够提供一个很好的 java API 来调用 Subversion。

JavaHL 实质上包括四个部分:

相对较薄的java代码层提供的API,使其可以通过 java 调用。

一个C++库(javahl 库或 libsvnjavahl-1)。java层到这个层的交互使用java本地接口(JNI)调用。C++层就是“高级别”的API的实现。例如,可以提供一个简单的java API:“提交这个文件列表,使用此提交消息”。C++层负责内存管理和执行所有底层 Subversion API调用需要完成的请求。

Subversion 库本身。命令行客户端将安装和使用相同的库。另外,其他Subversion客户端,如TortoiseSVN或AnkhSvn也使用相同的库。

Subversion 库的依赖项。Subversion 需要一些外部库来完成操作。最大的是 Apache Portable Runtime (APR)可移植运行时,但它也需要像Neon库的HTTP客户端和OpenSSL处理加密等。

应用程序要使用 JavaHL 这四层都是必需的。

获取正确的版本

WIKI 上是把这一节放在 JavaHL 是什么 之前的,因为知道你需要使用 Subclipse  的哪个版本是非常重要的。JavaHL  是 Subversion 的一部分,所以它的版本必须和你安装的Subversion 命令行客户端的版本匹配。每个Subclipse版本通常只支持一个单一的Subversion客户端版本(由于API的差异)。确保你获取与你的 Subclipse版本正确的 javahl 版本。

正确的版本对应关系见下图:

《Mac 安装 JavaHL》 https://blog.csdn.net/weixin_41791279/article/details/86015128

Eclipse Mac OS 安装 Subversion插件subclipse 缺失JavaHL解决方案的更多相关文章

  1. Eclipse Mac OS 安装 最新版 Subversion插件subclipse

    subclipse 目前全部转移到github 官方地址 https://github.com/subclipse/subclipse/wiki Eclipse mac版 安装 最新版svn插件sub ...

  2. mac OS 安装 Subversion JavaHL 客户端

    JavaHL原来官网  http://subclipse.tigris.org/wiki/JavaHL 目前已经全部转移到github 官方说明很详细 https://github.com/subcl ...

  3. Eclipse Mac OS 安装中文简体语言包

    打开Eclipse软件,在导航Eclipse下拉菜单中点开 About Eclipse 查看版本 我的是 Eclipse IDE for Enterprise Java Developers. Ver ...

  4. 如何在Eclipse下安装SVN插件——subclipse

    如何在Eclipse下安装SVN插件——subclipse | 浏览:2799 | 更新:2014-09-20 22:39 1 2 3 4 5 6 分步阅读 版本控制是开发人员必不可少的工具,而SVN ...

  5. eclipse在线安装svn插件subclipse

    eclipse在线安装svn插件subclipse 1 Help > Eclipse Marketplace,打开Eclipse Marketplace 2 切换到Search,输入subcli ...

  6. 在Eclipse/MyEclipse中安装spket插件

    Spket ide是强大的工具包为了JavaScript和XML的开发,这个强大的编辑器对JavaScript, XUL/XBLand Yahoo! Widget的开发都有全面的支持 ,比如代码完毕, ...

  7. Ubuntu13.04 Eclipse下编译安装Hadoop插件及使用小例

    Ubuntu13.04 Eclipse下编译安装Hadoop插件及使用小例 一.在Eclipse下编译安装Hadoop插件 Hadoop的Eclipse插件现在已经没有二进制版直接提供,只能自己编译. ...

  8. Eclipse Jee Oxygen安装svn插件

    转: Eclipse Jee Oxygen安装svn插件 技术标签: eclipse  svn Eclipse Jee Oxygen安装svn插件 入主题: 选择Eclipse->菜单-> ...

  9. Mac os安装DVWA环境教程

    Mac os安装DVWA环境教程 1.尽管Mac自带Apache和php 事实上Mac和WIN都用XAMPP一键化安装比较方便 2.解压DVWA-master 改名为dvwa移动到XAMPP的目录 3 ...

随机推荐

  1. jQuerry点击按钮回到顶部功能

    简单实现点击按钮回到顶部功能

  2. PTA数据结构与算法题目集(中文) 7-42整型关键字的散列映射 (25 分)

    PTA数据结构与算法题目集(中文)  7-42整型关键字的散列映射 (25 分) 7-42 整型关键字的散列映射 (25 分)   给定一系列整型关键字和素数P,用除留余数法定义的散列函数将关键字映射 ...

  3. Python:Day05-2

    面向对象进阶 在前面的章节我们已经了解了面向对象的入门知识,知道了如何定义类,如何创建对象以及如何给对象发消息.为了能够更好的使用面向对象编程思想进行程序开发,我们还需要对Python中的面向对象编程 ...

  4. python_Mock基本使用

    ## 1.mock简介 1. py3已将mock集成到unittest库中 2. 为的就是更好的进行单元测试 3. 简单理解,模拟接口返回参数 4. 通俗易懂,直接修改接口返回参数的值 5. 官方文档 ...

  5. Go gRPC教程-客户端流式RPC(四)

    前言 上一篇介绍了服务端流式RPC,客户端发送请求到服务器,拿到一个流去读取返回的消息序列. 客户端读取返回的流的数据.本篇将介绍客户端流式RPC. 客户端流式RPC:与服务端流式RPC相反,客户端不 ...

  6. 安卓开发学习日记 DAY5——监听事件onClick的实现方法

    今天主要学习了监听事件的是实现方法,就是说,做了某些动作后,怎么监听这个动作并作出相应反应. 方法主要有三种: 1.匿名内部类的方法 2.独立类的方法 3.类似实现接口的方法 以下分别分析: 1.匿名 ...

  7. 萌新带你开车上p站(Ⅳ)

    本文作者:萌新 前情回顾: 萌新带你开车上p站(一) 萌新带你开车上p站(二) 萌新带你开车上P站(三) 回顾一下前篇,我们开始新的内容吧 0x12 登录后看源码 通读程序,逻辑是这样子的: 输入6个 ...

  8. 列表推导式和seed()的理解

    Table of Contents generated with DocToc 列表推导式和seed()的理解 对seed()的理解 列表推导式 第一种用法 第二种用法 列表推导式和seed()的理解 ...

  9. PHP远程代码执行漏洞复现(CVE-2019-11043)

    漏洞描述 CVE-2019-11043 是一个远程代码执行漏洞,使用某些特定配置的 Nginx + PHP-FPM 的服务器存在漏洞,可允许攻击者远程执行代码. 向Nginx + PHP-FPM的服务 ...

  10. python初学(二)

    1.输入一个整数列表L,判断L中是否存在相同的数字: (1)若存在,输出YES,否则输出NO: (2)若存在,输出YES,同时输出相同的数字:否则输出NO. l=list(input()) print ...