標籤:
在Mac下安裝Eclipse外掛程式svnEclipse外掛程式後,每次開啟Eclipse都會彈出如下彈出框:
提示你本機缺少JavaHL Library。
選擇Eclipse→喜好設定(preference)→Team→SVN,可以看到SVN介面Client的定義如下:
這說明當前系統中缺少JavaHL,需要我們手動安裝。
subeclipse官網(http://subclipse.tigris.org/wiki/JavaHL 開啟可能會非常慢)給出的介紹說有兩種方式可以在Mac電腦上(OS X)上安裝JavaHL Library,一種是通過MacPort,一種是通過HomeBrew的形式。:
這裡我們主要介紹使用HomeBrew實行安裝。
步驟1:安裝HomeBrew:
HomeBrew的安裝需要依賴XCode和Commond Line,具體的安裝步驟如下:
1、安裝Xcode2、安裝command line tools,開啟終端,輸入命令: xcode-select - - install 這樣mac 10.9以後的系統會安裝command line tools3、安裝brew ,開啟終端,輸入命令: curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip 14、更新brew ,開啟終端,輸入命令:(可忽略) brew update5、診斷系統 ,開啟終端,輸入命令:(可忽略) brew doctor
HomeBrew的安裝過程介紹網上也有很多教程,比如:
http://brew.sh/ --官網
http://www.jb51.net/os/MAC/101860.html
http://www.cnblogs.com/liulipeng/p/3938518.html
就不更多介紹了,如果安裝過程遇到了問題,百度下基本都能解決的。
步驟2:執行命令,安裝JavaHL
進入終端,鍵入如下命令:
brew install --universal --java subversion
但是會遇到如下問題,提示有個包下不到,原因你懂得,被牆了。
==> Downloading https://www.apache.org/dyn/closer.cgi?path=subversion/subversion
Already downloaded: /Library/Caches/Homebrew/subversion-1.8.13.tar.bz2
==> Patching
patching file configure
Hunk #1 succeeded at 25386 (offset 20 lines).
patching file subversion/bindings/swig/perl/native/Makefile.PL.in
==> Downloading https://serf.googlecode.com/svn/src_releases/serf-1.3.8.tar.bz2
curl: (7) Failed to connect to serf.googlecode.com port 443: Operation timed out
Error: Failed to download resource "subversion--serf"
Download failed: https://serf.googlecode.com/svn/src_releases/serf-1.3.8.tar.bz2
這個問題也有解決的辦法,那就是下載對應的包,放在對應的目錄下,這樣就能再安裝JavaHL的過程中跳過serf-1.3.8.tar.bz2的下載了。
步驟2.1:下載serf-1.3.8.tar.bz2包:
http://download.csdn.net/detail/shanwenchao/8653245
下載後放在任意目錄,將名稱修改為:subversion--serf-1.3.8.tar.bz2
步驟2.2:將改名後的該檔案放在目錄下:
將修改後的檔案放在/Library/Caches/Homebrew目錄下。
步驟2.3:重新執行安裝命令,安裝JavaHL:
brew install --universal --java subversion
這是就不會下載而是直接從檔案目錄中取該包了。如下過程:
brew install --universal --java subversionWarning: subversion: --java was deprecated; using --with-java instead!==> Downloading https://www.apache.org/dyn/closer.cgi?path=subversion/subversionAlready downloaded: /Library/Caches/Homebrew/subversion-1.8.13.tar.bz2==> Patchingpatching file configureHunk #1 succeeded at 25386 (offset 20 lines).patching file subversion/bindings/swig/perl/native/Makefile.PL.in==> Downloading https://serf.googlecode.com/svn/src_releases/serf-1.3.8.tar.bz2Already downloaded: /Library/Caches/Homebrew/subversion--serf-1.3.8.tar.bz2==> /usr/local/opt/scons/bin/scons PREFIX=/usr/local/Cellar/subversion/1.8.13/li==> /usr/local/opt/scons/bin/scons install==> ./configure --prefix=/usr/local/Cellar/subversion/1.8.13 --with-zlib=/usr --with-sqlite=/usr/local/opt/sqlite --with-serf=/usr/local/Cellar/subversion/1.8.13/libexec/serf --disa==> make==> make install==> make tools==> make install-tools==> make javahl==> make install-javahl==> Caveatssvntools have been installed to: /usr/local/opt/subversion/libexecYou may need to link the Java bindings into the Java Extensions folder: sudo mkdir -p /Library/Java/Extensions sudo ln -s /usr/local/lib/libsvnjavahl-1.dylib /Library/Java/Extensions/libsvnjavahl-1.dylibBash completion has been installed to: /usr/local/etc/bash_completion.d==> Summary?? /usr/local/Cellar/subversion/1.8.13: 119 files, 18M, built in 11.3 minutes
整個安裝過程會持續很長時間,千萬不要中途關掉終端。
步驟2.4:執行命令綁定Java環境和Java延伸目錄的關係:
正如上面安裝過程最後提示的那樣:
You may need to link the Java bindings into the Java Extensions folder: sudo mkdir -p /Library/Java/Extensions sudo ln -s /usr/local/lib/libsvnjavahl-1.dylib /Library/Java/Extensions/libsvnjavahl-1.dylib
依次在終端中執行上面兩句命令,整個安裝過程就完成了。
安裝後,在進入Eclipse查看SVN Client的配置如下:
問題解決~!
縱觀整個安裝過程,簡要來說分為如下過程:
1:安裝Brew;
2:下載包,改名,放在指定目錄下;
3:執行安裝命令,及其補充命令;
網上大多數介紹解決JavaHL not available的文章都只介紹了第一步和第三部,卻少了第二部,不知道他們是不是都是FQ安裝或者是在國外安裝的所以沒有遇到被牆導致不能下載對應檔案的問題。現加入步驟2,希望能夠協助大家解決該問題。
參考介紹:
http://bbs.csdn.net/topics/390972167
http://ju.outofmemory.cn/entry/90475
Mac eclipse安裝SVN javaHL not available的解決方案