procesador caracteristicas athlon java windows dll jni

java - procesador - amd athlon 64 fx caracteristicas



No se puede cargar IA-32-bit.dll en una plataforma AMD de 64 bits (11)

Aquí hay una respuesta para aquellos que compilan desde la línea de comando / símbolo del sistema. No requiere cambiar su variable de entorno de Path ; simplemente le permite usar la JVM 32 bits para el programa con la DLL 32 bits.

Para la compilación, no debería importar qué javac se usa, 32 bits o 64 bits.

>javac MyProgramWith32BitNativeLib.java

Para la ejecución real del programa, es importante especificar la ruta a la versión de 32 bits de java.exe

Voy a publicar un ejemplo de código para Windows , ya que parece ser el sistema operativo utilizado por el OP.

Windows

Lo más probable es que el código sea algo así como:

>"C:/Program Files (x86)/Java/jre#.#.#_###/bin/java.exe" MyProgramWith32BitNativeLib

La diferencia estará en los números después de jre . Para encontrar los números que debe usar, ingrese:

>dir "C:/Program Files (x86)/Java/"

En mi máquina, el proceso es el siguiente

C:/Users/me/MyProject>dir "C:/Program Files (x86)/Java" Volume in drive C is Windows Volume Serial Number is 0000-9999 Directory of C:/Program Files (x86)/Java 11/03/2016 09:07 PM <DIR> . 11/03/2016 09:07 PM <DIR> .. 11/03/2016 09:07 PM <DIR> jre1.8.0_111 0 File(s) 0 bytes 3 Dir(s) 107,641,901,056 bytes free C:/Users/me/MyProject>

Entonces sé que mis números son 1.8.0_111 , y mi comando es

C:/Users/me/MyProject>"C:/Program Files (x86)/Java/jre1.8.0_111/bin/java.exe" MyProgramWith32BitNativeLib

Estoy intentando usar SVMLight desde Java, usando el contenedor JNI en esta página :

static { System.loadLibrary("lib/JNI_SVM-light-6.01/lib/svmlight"); }

Obtuve el siguiente error:

... lib / JNI_SVM-light-6.01 / lib / svmlight.dll: No se puede cargar IA-32-bit .dll en una plataforma AMD de 64 bits

¿Puedo resolver esto recompilando el .dll por 64 bit? ¿Cómo voy a hacer esto? ¿Hay alguna otra solución alternativa que pueda usar? SVMLight hace que el código fuente C esté disponible.


Asegúrese de establecer PATH en Archivos de programa (x86), no Archivos de programa . Eso resolvió mi problema.


Ir

Propiedades del proyecto >> Ejecutar >> Opciones de VM

y pon esta dirección:

-Djava.library.path="C:/opencv/build/java/x64"



Respuesta corta a la primera pregunta: sí.

Respuesta más larga: tal vez; depende de si el proceso de compilación de SVMLight se comporta en las ventanas de 64 bits.

Nota final: esa llamada a System.loadLibrary es tonta. Llame a System.load con una ruta de acceso completa o permita que busque java.library.path.


Sí, tendrá que volver a compilar la DLL para 64 bits. Su única otra opción es cambiar a una JVM de 32 bits u obtener un proceso de 32 bits para cargar la DLL en su nombre y comunicarse con ese proceso de alguna manera.


Simplemente vaya a instalar la descarga jdk_x86 e instálela en Archivos de programa (x86) y configure la ruta jre en su proyecto. Eso es.


Tenía el mismo problema en win64bit y JVM 64 bits

Se resolvió cargando dll en system32


Tenía un problema relacionado con esto y estaba leyendo

"Exception in thread "main" java.lang.UnsatisfiedLinkError: C:/opencv/build/java/x86/opencv_java2413.dll: Can''t load IA 32-bit .dll on a AMD 64-bit platform "and it took me an entire night to figure out.

C:/opencv/build/java/x64 mi problema copiando el dll en C:/opencv/build/java/x64 en mi carpeta system32. Espero que esto sea de ayuda para alguien.


Tuve el mismo problema con una aplicación Java que utilizaba tibco dll originalmente pensada para ejecutarse en Win XP. Para que funcione en Windows 7, hice que la aplicación apunte a JRE de 32 bits. Esperando para ver si hay otra solución.


Tuve un problema al ejecutar red5 (tomcat) en Windows x64 que anteriormente funcionaba en Windows x32, obtuve el próximo error:

INFO pool-15-thread-1 com.home.launcher.CommandLauncher - Exception in thread "main" java.lang.UnsatisfiedLinkError: C:/..../lib/Data Samolet.dll: Can''t find dependent libraries INFO pool-15-thread-1 com.home.launcher.CommandLauncher - at java.lang.ClassLoader$NativeLibrary.load(Native Method)

Problema resuelto cuando instalé la versión Java x32 y configuré el siguiente

"Variables de entorno"

"Variables de usuario para el hogar"

JAVA_HOME => C: / Archivos de programa (x86) / Java / jdk.1.6.0_45

"Variables del sistema"

Ruta [al principio] => C: / Archivos de programa / Java / jdk.1.8.0_60; ..