본문 바로가기

개발&컴퓨터/개발도구

[Eclipse] Failed to load JavaHL Library (Subversion Native Library Not Available)

반응형

이클립스를 실행하고, SVN에 접속하려고 하는데, 갑자기(?) 아래와 같은 다이얼로그 창이 뜹니다.

 

SVN과 관련된 어떤 동작을 취하면 처음 한 번만 발생하며, 실제 창을 닫고, 그대로 사용해도 별다른 문제를 발생시키지는 않습니다.

그리고 이클립스를 재시작 하지 않는 한, 더 이상 아래 에러는 보이지 않습니다.

 

 

Subclipse talks to Subvrsion via a Java API that requires access to native libraries. Those

libraries were either not found or an incompatible version was loaded. The errors are displayed below.

 

Information on getting a proper version installed and visible t oEclipse is available here.

 

http://subclipse.tigris.org/wiki/javaHL  

 

Errors: 

Failed to load JavaHL Library.

These are the errors that were encountered:

no libapr-1 in java.library.path

 

... 

 

 

 

 

 

그래도 뭔가 문제가 있으니까 에러(Error) 메시지를 보여준 것이겠지요?

 

네이티브 라이브러리 접근을 필요로하는 Java API가 Subversion에서 사용되는데, 이 네이티브 라이브러리가 시스템에 설치되어 있지 않거나 적합하지 않은 버전이 로드되었다고 합니다.

 

그리고 적합한 버전의 라이브러리 정보를 얻기 위해서 http://subclipse.tigris.org/wiki/JavaHL URL 주소를 알려줍니다.

 

위의 사이트에 가 보시면 알겠지만, Subclipse의 각 버전별로 적합한 JavaHL 버전을 사용해야 한다고 알려주고 있습니다.

 

Subclipse Version

SVN/JavaHL Version

1.12.x

1.9.x

1.10.x

1.8.x

1.8.x

1.7.x

1.6.x

1.6.x

1.4.x

1.5.x

1.2.x

1.4.x

1.0.x

1.4.x

JavaHL에 관한 정보는 여기 : http://subclipse.tigris.org/wiki/JavaHL#head-5d0a7f156dbdf1a0a5f7f51fcaab21d051ac963b

 

그럼 왜 갑자기 문제가 발생하였는지는 모르겠지만, 현재 사용중인 Subsclipse 버전에 맞는 JavaHL을 설치해주면 됩니다.

 

제 PC환경은 64비트 여서 JavaHL 64비트 버전을 다운받아 설치하면 됩니다. 이 버전을 제공하는 SVN중의 하나가 sliksvn이며 아래에서 다운 받을 수 있습니다.

 

 

아래에서 가장 최신 버전 패키지를 내려받아 받아서 설치합니다.

사실 무조건 최신 버전 패키지를 받아서 설치하면 문제가 해결되는 것이 아니라, 적합한 버전을 내려 받아야 합니다.

 

최신 버전이 아닌 이 전 버전을 내려 받고 싶다면 아래의 old versions archive 링크를 클릭해서 하위 버전의 SNV을 내려 받아 설치할 수 있습니다.

 

Subclipse 가 SVN 설치 Path에서 JavaHL 라이브러리 경로를 알아서 찾기 때문에 제대로 설치가 되었다면 위의 오류는 더 이상 발생하지 않을 것입니다.

 

하지만 설치했는데(최신 버전으로)도, 동일한 메시지가 뜬다면 아래 메뉴로 이동해서 확인합니다.

 

[Window - Preferences 메뉴 선택]

 

 

 

Preferences 에서 Team-SVN 확인하기

 

방금 SVN 설치를 했음에도 불구하고, 하단의 SVN interface: 의 Client 를 보면 JavaHL (JNI) Not Available 이 선택되어 있습니다. (아래의 SVNKit (Pure Java) SVNKit v1.3.5.7406 은 기존부터 설치되어 있던 SVN이며 버전이 맞지 않는 것입니다.) 새로 설치한 SVN이 표시되지 않는 것 보니, 뭔가 호환성이 맞지 않나 봅니다.

 

 

 

 

실제 위와 같은 오류가 떴을 때, 오류 메시지를 좀 더 내려보면 어떤 버전이 필요한지 내용이 있습니다.

 

저 같은 경우는 실제 1.6.x 이상의 버전을 설치하라는 메시지가 있었습니다.

그래서 설치한 1.9.3 버전은 다시 삭제하고, sliksvn.com 사이트의 old versions archive 링크를 타고 가서 적합한 버전을 다시 내려받아 설치합니다. 저는 1.6.x 버전 중에 가장 높은 1.6.9 버전(64비트)을 받아 설치하였습니다.

 

다시 이클립스를 띄운 후, SVN에 접속해 보니, 더 이상 위의 오류 메시지가 뜨지 않았습니다.

 

Window-Preferences 메뉴를 통해 Team-SVN 의 SVN interface를 확인해 보니, 새로 설치한 JavaHL 정보가 표시되고, 기본으로 선택되어 있는 것을 확인할 수 있었습니다.

 

 

 

 

 

반응형