Nie udało się załadować biblioteki JavaHL


96

Po aktualizacji do Snow Lion zacząłem otrzymywać te błędy w programie Flash Builder / Eclipse podczas próby korzystania z SVN:

Failed to load JavaHL Library.
These are the errors that were encountered:
no libsvnjavahl-1 in java.library.path
/opt/subversion/lib/libsvnjavahl-1.0.dylib:  Library not loaded: /usr/lib/libpq.5.dylib   Referenced from: /opt/subversion/lib/libsvnjavahl-1.0.dylib   Reason: no suitable image found.  Did find:  /usr/lib/libpq.5.dylib: mach-o, but wrong architecture  /usr/lib/libpq.5.dylib: mach-o, but wrong architecture
no svnjavahl in java.library.path
java.library.path = .:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java

3
Wygląda na to, że odnosi się to do Eclipse i klienta SVN, którego używasz; niekoniecznie Flash Builder.
JeffryHouser

2
Brzmi dobrze. Używam subclipse. Zaktualizuję tagi. Dzięki
1,21 gigawata

Odpowiedzi:


111

Jeśli nie musisz używać języka JavaHL, Subclipse udostępnia również bibliotekę API SVN w czystym języku Java - SVNKit (http://svnkit.com). Wystarczy zainstalować adapter klienta SVNKit i wtyczki biblioteki z witryny aktualizacji Subclipse, a następnie wybrać je w preferencjach w obszarze Zespół> SVN.


1
Dziwne, na przeczuciu właśnie sprawdziłem preferencje i SVNKit już tam był. Zdarzyło się to tylko w rzadkich przypadkach (w tej chwili nie pracuję nad projektem wspieranym przez SVN), więc nie mogę powiedzieć, że zadziałało. Naprawdę mam taką nadzieję. Kiedy tak się dzieje, blokuje Eclipse do czasu zakończenia wyszukiwania (?) Lub wygaśnięcia połączenia (?) Po około minucie. Naprawdę irytujące, gdy masz duży sprint i mało czasu ...
William T. Mallard

1
Używana wersja Eclipse IDE nie miałaby nic wspólnego z działającym lub niedziałającym JavaHL. subclipse.tigris.org/wiki/JavaHL
Mark Phippard

@Cerin to zdecydowanie działa. Dlaczego nie powiesz nam, jaki masz problem / błąd i może możemy Ci pomóc?
Eddie Curtis

177

Spróbuj tego:

  1. Wybierz Okno >> Preferencje
  2. Rozwiń Zespół >> SVN
  3. Pod SVN interfejs ustawionej Klienta do SVNKit (pure Java) SVNKit ... .

6
Dzięki, to rozwiązało problem i jest szybsze niż odinstalowanie wtyczki JavaHL!
xarlymg89

Sprawdziłem moje preferencje i stwierdziłem, że jest tylko jeden wybór jako „JavaHL (JNI) 1.8.8 (r1568071)”. Ktoś może mi powiedzieć, dlaczego i jak rozwiązać problem? dzięki
3h3

1
Ta opcja nie jest dostępna ... nawet po zainstalowaniu SVNKit z witryny aktualizacji ...
Cerin

26

Na Kubuntu moja ścieżka do biblioteki zmieniła się z powodu instalacji innej wersji Javy. Oto cały obraz , ale w skrócie:

sudo apt-get install libsvn-java
sudo find / -name libsvnjavahl-1.so

Dane wyjściowe ostatniego polecenia mogą wyglądać następująco:

/usr/lib/x86_64-linux-gnu/jni/libsvnjavahl-1.so

To daje ci ścieżkę, dzięki czemu możesz dodać następujące elementy do eclipse.ini:

-Djava.library.path=/usr/lib/x86_64-linux-gnu/jni/

Dzięki temu JavaHL stał się dostępny w Eclipse Luna z OpenJDK 1.7.0_79 na Trisquel 7.
jah

1
To jest jedyna odpowiedź, która RZECZYWISTE odpowiada na pierwotne pytanie.
robross0606

prawdziwa odpowiedź, aplikacja wymaga tej biblioteki, nie ma potrzeby umieszczania ścieżki w trzecim kroku po prostu zrestartuj i zostanie rozpoznana
theGabyRod

7

Zajrzyj na tego bloga . Zawiera mnóstwo informacji. Również w przypadku instalacji przez napar, nie przegap tej notatki:

Może być konieczne połączenie powiązań Java z folderem Java Extensions:

 $ sudo mkdir -p /Library/Java/Extensions
 $ sudo ln -s /usr/local/lib/libsvnjavahl-1.dylib /Library/Java/Extensions/libsvnjavahl-1.dylib

To zadziałało idealnie dla mnie. Mój komputer zrestartował się z jakiegoś zewnętrznego powodu, zanim miałem okazję przeczytać instrukcje po instalacji. Nawet gdybym mógł użyć natywnego SVNKit podclipse, cieszę się, że nie pozwolę, aby rozszerzenie javahl do połowy zostało zainstalowane
Alexandre Morgaut

2

Właśnie zainstalowałem Mountain Lion i miałem ten sam problem, z którego korzystam FLashBuilder (który jest 32-bitowy), a MountainLion jest 64-bitowy, co oznacza, że ​​domyślnie MacPorts instaluje wszystko jako 64-bitowe. Wersja subclipse, której używam, to 1.8.Ponieważ już zainstalowałem Subversion i JavaHLBindings, właśnie uruchomiłem to polecenie:

 sudo port upgrade --enforce-variants active +universal 

To sprawiło, że porty Mac przeszły przez wszystko, co już jest zainstalowane, a także zainstalowały wersję 32-bitową.

Następnie ponownie uruchomiłem FlashBuildera i nie wyświetlał już żadnych błędów JavaHL.


Co robi linia? -> To skupia porty mac na wszystko, co jest już zainstalowane, a także instaluje wersję 32-bitową.
catrapture


1

może możesz spróbować tego: zmień wersję jdk. I rozwiązałem ten problem, zmieniając jdk z 1.6.0_37 na 1.6.0.45. BR!



1

U mnie zacząłem napotykać ten problem po uaktualnieniu do java 8, a następnie powróciłem do java 7. Ponownie zaktualizowałem do java 8 i problem został rozwiązany.


1

W przypadku użytkowników systemu Windows Eclipse / STS v3.9.X może być konieczna aktualizacja wersji subclipse.

Wybierz Pomoc > Zainstaluj nowe oprogramowanie > Kliknij Subclipse i edytuj wersję z 1.6.X na 1.8.X

Ta metoda dotyczy również tych, którzy napotkają niedostępną JavaHL. Możesz sprawdzić, czy JavaHL jest dostępna, czy nie, przechodząc do Windows > Preferencje > Zespół > SVN . Możesz to sprawdzić w sekcji Interfejs SVN > Klient .

Jeśli to działa na MAC OS, prosimy o odpowiedź w sekcji komentarzy. :)


Gdzie masz „Subclipse” w „Install New Software”?
Linia

@Line Jeśli jeszcze nie masz Subclipse, możesz kliknąć przycisk Dodaj z menu Zainstaluj nowe oprogramowanie i zainstalować je zgodnie z wersją, która Ci odpowiada. Wstaw lokalizację , używając tego adresu URL subclipse.tigris.org/update_1.10.x .
OreaSedap

0

Moje zrozumienie - Zasadniczo klient svn jest domyślnie dostępny w systemie Mac OS. Podczas instalacji w eclipse powinniśmy dopasować wtyczkę svn do wtyczki mac, a javaHL nie zabraknie. Aktualizacja jest długotrwała, instalując xcode, a następnie używając homebrew lub macports, które można znaleźć po wygooglowaniu, ale jeśli się spieszysz, wykonaj poniższe czynności.

1) w powłoce terminala Mac

$ svn --version

Zanotuj wersję, np. 1.7.

2) otwórz poniższy link

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

sprawdź, której wersji podclipsu potrzebujesz odpowiadającej temu. na przykład

Wersja Subclipse SVN / JavaHL Wersja 1.8.x 1.7.x

3) ok, podnieś adres URL odpowiadający 1.8.x from

http://subclipse.tigris.org/servlets/ProjectProcess?pageID=p4wYuA

i dodaj do swojego eclipse => Zainstaluj nowe oprogramowanie w pomocy

wybierz cokolwiek potrzebujesz, klienta svn lub subclipse lub mylyn itp. i poprosi o ponowne uruchomienie STS / eclipse, to wszystko gotowe. pracował dla mnie.

UWAGA: jeśli masz już zainstalowanych wiele wersji w swoim eclipse, najlepiej odinstalować wszystkie wersje klienta subclipse lub svn z wtyczek eclipse i zacząć od nowa, wykonując czynności wymienione powyżej.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.