很多人用MyEclipse或Eclipse的svn都被這個(gè)JavaHL(JNI)not Available錯(cuò)誤給整瘋了响蕴,當(dāng)然你也可以點(diǎn)擊右邊的上下箭頭來(lái)選擇 SVNKit...作為client绩蜻,這樣也可以正常使用subclipse,但是官方建議使用JavaHL作為client礁苗,穩(wěn)定性,速度性都比SVNKit好很多级解,使用SVNKit有可能出現(xiàn)未知的錯(cuò)誤冒黑,使你的項(xiàng)目數(shù)據(jù)受損。(javaHL是通過(guò)jni的方式來(lái)調(diào)用本地的SVN庫(kù)蠕趁,所以說(shuō)速度快薛闪,穩(wěn)定可靠)我梳理下解決方案。
首先了解下概念: JavaHL is a part of the Subversion project.具體地說(shuō),它是Java語(yǔ)言綁定的Subversion API俺陋。 Subversion提供了一個(gè)分層的API設(shè)計(jì),交付作為本地庫(kù)(DLL)豁延。
Subclipse是用Java編寫的,因此它需要使用JavaHL庫(kù)能夠使用Subversion的API。 Subclipse包括Java層JavaHL腊状,所以需要javahl诱咏。
第一步:安裝svn,推薦用在線安裝的方法缴挖,打開(kāi)MyEclipse的help-》找到install from site
在紅圈的地方輸入subclipse發(fā)行版本地址袋狞。因?yàn)楝F(xiàn)在遷移到了github所以網(wǎng)上的大多文章都是比較舊的地址,這是最新地址,找到你需要的版本苟鸯,比如現(xiàn)在最新的是:
一定要好好對(duì)比同蜻,好好對(duì)比,填寫地址并且在name填寫subclipse早处,很多人繼續(xù)完成所有后還是有錯(cuò)誤湾蔓,根據(jù)錯(cuò)誤原因要么是Subclipse Version和SVN/javaHl Version不匹配,看看自己是否匹配Curret Versions砌梆。
然后按下圖一路到底默责。
然后在MyEclipse的偏好設(shè)置->Team 主菜單選擇Perspective為SVN資源庫(kù)研究。之后再點(diǎn)Team下拉導(dǎo)航的SVN就能看到開(kāi)篇說(shuō)的經(jīng)典錯(cuò)誤了咸包,哈哈哈桃序。
第二步就是安裝javahl
我推薦用HomeBrew安裝,不知道就自己Google吧,HomeBrew是用Ruby來(lái)實(shí)現(xiàn)的烂瘫,因?yàn)镸ac OS X 已經(jīng)默認(rèn)安裝了Ruby媒熊,所以我們直接執(zhí)行這條命令就可以了。不放心的可以在終端輸入:ruby -v
來(lái)查看Ruby的版本忱反。
在終端輸入:
ruby -e "$(curl -fsSLhttps://raw.github.com/mxcl/homebrew/go)"
回車泛释,接下來(lái)就開(kāi)始在線安裝HomeBrew了,安裝時(shí)間可能較長(zhǎng)温算,視網(wǎng)絡(luò)狀況而定。homebrew默認(rèn)是被安裝在usr/local下间影,bin就是它的主目錄注竿,并且bin目錄的路徑已被加入path,在任意目錄可以直接執(zhí)行brew命令魂贬。通過(guò)brew安裝的包都存放在use/local下的Cellar目錄中巩割。HomeBrew安裝好了之后一條命令就能安裝JavaHL了,注:需要翻墻:
brew install subversion --with-java
(官方的我懶得翻譯了,很簡(jiǎn)單)After the installation, you need to run these commands which put a link to the JavaHL library into the folder that the JVM looks for JNI libraries. This causes it to automatically be seen by the JVM when you run Eclipse:
sudo mkdir -p /Library/Java/Extensions sudo ln -s /usr/local/lib/libsvnjavahl-1.dylib /Library/Java/Extensions/libsvnjavahl-1.dylib
最后重啟你的IDE就OK了付燥。就是這么SoEasy