No se pudo cargar la biblioteca JavaHL

96

Después de actualizar a Snow Lion, comencé a recibir estos errores en Flash Builder / Eclipse cuando intentaba usar 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
1,21 gigavatios
fuente
3
Parece que esto se relacionaría con Eclipse y el cliente SVN que está utilizando; no necesariamente Flash Builder.
JeffryHouser
2
Eso suena bien. Estoy usando subclipse. Actualizaré las etiquetas. Gracias
1,21 gigavatios

Respuestas:

111

Si no necesita utilizar JavaHL, Subclipse también proporciona una biblioteca de API SVN de Java puro: SVNKit (http://svnkit.com). Simplemente instale el adaptador de cliente SVNKit y los complementos de la biblioteca desde el sitio de actualización de Subclipse y luego elíjalo en las preferencias en Equipo> SVN.

Mark Phippard
fuente
1
Extraño, por una corazonada, simplemente verifiqué las preferencias y SVNKit ya estaba allí. Esto solo sucedió en raras ocasiones (no estoy trabajando en un proyecto respaldado por SVN en este momento), así que no puedo decir que haya funcionado. Realmente espero que así sea. Cuando esto sucede, bloquea Eclipse hasta que finaliza la búsqueda (?) O la conexión (?) Se agota después de aproximadamente un minuto. Realmente molesto cuando tienes un gran sprint y poco tiempo ...
William T. Mallard
1
La versión del Eclipse IDE que se utiliza no tiene nada que ver con que JavaHL funcione o no funcione. subclipse.tigris.org/wiki/JavaHL
Mark Phippard
@Cerin definitivamente funciona. ¿Por qué no nos dice qué problema / error tiene y tal vez podamos ayudarlo?
Eddie Curtis
176

Prueba esto:

  1. Seleccionar ventana >> Preferencias
  2. Expandir equipo >> SVN
  3. Bajo SVN interfaz conjunto de cliente a SVNKit SVNKit (Java puro) ... .
Atul Kaushik
fuente
6
Gracias, eso resolvió el problema y es más rápido que desinstalar el complemento JavaHL.
xarlymg89
Revisé mi preferencia y descubrí que solo hay una opción como "JavaHL (JNI) 1.8.8 (r1568071)". ¿Alguien puede decirme por qué y cómo resolver el problema? gracias
3h3
1
Esta opción no está disponible ... incluso después de instalar SVNKit desde su sitio de actualización ...
Cerin
26

En Kubuntu, mi ruta a la biblioteca cambió debido a la instalación de otra versión de Java. Aquí está la imagen completa , pero en resumen:

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

La salida del último comando podría verse así, por ejemplo:

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

Esto le da la ruta, por lo que puede agregar lo siguiente a su eclipse.ini:

-Djava.library.path=/usr/lib/x86_64-linux-gnu/jni/
makkasi
fuente
Al hacer esto, JavaHL estuvo disponible en Eclipse Luna con OpenJDK 1.7.0_79 en Trisquel 7.
jah
1
Esta es la única respuesta aquí que REALMENTE responde a la pregunta original.
robross0606
la respuesta real, la aplicación requiere esta biblioteca, no es necesario poner la ruta en el tercer paso, simplemente reinicie y será reconocida
theGabyRod
6

Mira este blog . Tiene mucha información. Además, si se instala a través de brew, no se pierda esta nota:

Es posible que deba vincular los enlaces de Java a la carpeta Extensiones de Java:

 $ sudo mkdir -p /Library/Java/Extensions
 $ sudo ln -s /usr/local/lib/libsvnjavahl-1.dylib /Library/Java/Extensions/libsvnjavahl-1.dylib
Federico
fuente
Esto funcionó perfectamente para mí. Mi computadora se reinició por alguna razón externa antes de que tuviera la oportunidad de leer las instrucciones posteriores a la instalación. Incluso si pudiera usar el SVNKit nativo de subclipse, me complace no dejar que la extensión javahl se instale a medias
Alexandre Morgaut
2

Acabo de instalar Mountain Lion y tuve el mismo problema: uso FLashBuilder (que es de 32 bits) y MountainLion es de 64 bits, lo que significa que, por defecto, MacPorts instala todo como 64 bits. La versión de subclipse que utilizo es 1.8 Como ya había instalado Subversion y JavaHLBindings, acabo de ejecutar este comando:

 sudo port upgrade --enforce-variants active +universal 

Esto hizo que los puertos mac pasaran por todo lo ya instalado y también instalaran la versión de 32 bits.

Luego reinicié FlashBuilder y ya no mostraba ningún error de JavaHL.

captura
fuente
¿Qué hace la línea? -> Esto hace que los puertos mac pasen por todo lo ya instalado y también instalen la versión de 32 bits.
Captura
2

Es posible que necesite o no JavaHL según su sistema operativo. Además de otras sugerencias, simplemente publicando esto aquí.

ingrese la descripción de la imagen aquí

Para otros sistemas operativos, consulte esta fuente: http://subclipse.tigris.org/wiki/JavaHL

Príncipe
fuente
1

tal vez puedas probar esto: cambiar la versión jdk. Y resolví este problema cambiando jdk de 1.6.0_37 a 1.6.0.45. BR!

Evan
fuente
1

Para mí, comencé a tener este problema cuando actualicé a Java 8, y luego volví a Java 7. Actualicé nuevamente a Java 8 y el problema se resolvió.

sasfour
fuente
1

Para el usuario de Windows de Eclipse / STS v3.9.X, es posible que deba actualizar su versión de subclipse.

Vaya a Ayuda > Instalar nuevo software > Haga clic en Subclipse y edite la versión de 1.6.X a 1.8.X

Este método también se aplica a aquellos que encuentran JavaHL no disponible. Puede verificar si JavaHL está disponible o no en Vaya a Windows > Preferencias > Equipo > SVN . Puede verificarlo en Interfaz SVN > sección Cliente .

Si esto funciona en MAC OS, por favor responda en la sección de comentarios. :)

OreaSedap
fuente
¿Dónde tiene "Subclipse" en "Instalar nuevo software"?
Línea
@Line Si aún no tiene Subclipse, puede hacer clic en el botón Agregar del menú Instalar nuevo software e instalarlo según la versión que más le convenga. Inserte la ubicación utilizando esta URL subclipse.tigris.org/update_1.10.x .
OreaSedap
0

Mi comprensión: Básicamente, el cliente svn viene de forma predeterminada en Mac os. Durante la instalación en eclipse, deberíamos hacer coincidir el complemento svn con el complemento mac y no faltará javaHL. Hay un proceso largo para actualizar instalando xcode y luego usando homebrew o macports que puede encontrar después de buscar en Google, pero si tiene prisa, use simplemente los pasos a continuación.

1) en su terminal de mac

$ svn --versión

Anote la versión, por ejemplo, 1.7.

2) abre el enlace de abajo

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

compruebe qué versión de subclipse necesita correspondiente. p.ej

Versión de Subclipse SVN / JavaHL Versión 1.8.x 1.7.x

3) ok, elija la URL correspondiente a 1.8.x de

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

y agregue a su eclipse => Instale nuevo software en ayuda

seleccione lo que necesite, cliente svn o subclipse o mylyn, etc. y le pedirá que reinicie STS / eclipse, eso es todo. trabajó para mi.

NOTA: si ya tiene varias versiones instaladas dentro de su eclipse, lo mejor es desinstalar todas las versiones de cliente subclipse o svn de los complementos de eclipse y comenzar de nuevo con los pasos enumerados anteriormente.

Neeraj
fuente