Incompatible JavaHL library loaded. Subversion 1.8.x required.

Mac OS X 下 Eclipse 安装 SVN 插件 subclipse 和 JavaHL 之后,启动 Eclipse ,使用版本管理相关功能时,第一次会弹出提示:

Incompatible JavaHL library loaded.  Subversion 1.8.x required.


环境描述:

操作系统:mac os sierra 10.12

Eclipse Java EE IDE for Web Developers. Version: Neon.2 Release (4.6.2) 

svnserve --version   svnserve, version 1.9.5 (r1770682) 

svn --version   svn, version 1.9.5 (r1770682)  

subclipse 1.10.x

问题原因分析

由于 subclipse 安装的版本是 1.10.x , 所以 JavaHL 安装的版本就低,所以和SVN的版本不匹配。

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


我的SVN版本是 1.9.x, subclipse 的版本是 1.10.x ,所以不匹配。

解决方法

SVN降低似乎是有难度了,那就是升级 subclipse 到 1.12.x 版本,但是安装 subclipse 1.12.x 时经常会出错,有好几次得到以下提示:

An error occurred while collecting items to be installed

session context was:(profile=_Users_aven_eclipse_jee-neon_Eclipse.app_Contents_Eclipse, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).

No repository found containing: osgi.bundle,org.tigris.subversion.clientadapter.javahl,1.9.3

No repository found containing: org.eclipse.update.feature,org.tigris.subversion.clientadapter.javahl.feature,1.9.3


遇到这个问题就反复的尝试吧,我是经过很多次尝试之后终于有一次成功了。

这个错误目前能想到的应该就是网络的问题。

======================文档信息===========================

版权声明:非商用自由转载-保持署名-注明出处

署名(BY) :testcs_dn(微wx笑)

文章出处:[无知人生,记录点滴](http://blog.csdn.NET/testcs_dn)

==============欢迎关注我的个人微信订阅号(微wx笑)============

`Incompatible integer to pointer` 错误通常是因为尝试将整数类型的值赋给指针类型的变量,或者反之,这违反了类型系统的规则。以下是一些可能的解决方案: #### 1. 检查赋值操作 确保赋值语句两边的类型是兼容的。如果需要存储整数,使用整数类型的变量;如果需要存储地址,使用指针类型的变量。 **错误示例**: ```objc NSInteger num = 10; NSInteger *ptr = num; // 错误:Incompatible integer to pointer conversion ``` **正确示例**: ```objc NSInteger num = 10; NSInteger *ptr = # // 正确:将 num 的地址赋给指针 ptr ``` #### 2. 使用类型转换 在某些情况下,可以使用显式的类型转换来解决类型不匹配的问题。但要谨慎使用,因为这可能会导致未定义行为。 **示例**: ```objc NSInteger num = 10; void *voidPtr = (void *)# // 将 NSInteger 指针转换为 void 指针 ``` #### 3. 检查函数参数和返回值 确保函数调用时传递的参数类型和函数声明的参数类型一致,以及函数返回值的类型和接收返回值的变量类型一致。 **错误示例**: ```objc NSInteger getNumber() { return 10; } NSInteger *ptr = getNumber(); // 错误:Incompatible integer to pointer conversion ``` **正确示例**: ```objc NSInteger getNumber() { return 10; } NSInteger num = getNumber(); // 正确:将返回的整数赋给整数变量 ``` #### 4. 检查数组和指针的使用 在处理数组和指针时,要确保正确使用数组名和指针操作。 **错误示例**: ```objc NSInteger arr[5] = {1, 2, 3, 4, 5}; NSInteger *ptr = arr[0]; // 错误:Incompatible integer to pointer conversion ``` **正确示例**: ```objc NSInteger arr[5] = {1, 2, 3, 4, 5}; NSInteger *ptr = arr; // 正确:将数组的首地址赋给指针 ptr ```
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值