java tomcat java-ee unsatisfiedlinkerror

java - tcnative-1.dll No se puede cargar AMD 64-bit.dll en una plataforma IA de 32 bits



tomcat java-ee (5)

Recibo este error cuando trato de ejecutar tomcat:

"java.lang.UnsatisfiedLinkError: C: / Archivos de programa (x86) / apache-tomcat-7.0.34 / bin / tcnative-1.dll: No se puede cargar AMD 64-bit .dll en una plataforma IA de 32 bits" .

Sin embargo, he descargado el JRE de 64 bits y comprobé dos veces mi versión de Java:

C: / Archivos de programa (x86) / apache-tomcat-7.0.34 / bin> java -version

versión de Java "1.7.0_10"

Java (TM) SE Runtime Environment (compilación 1.7.0_10-b18)

Java HotSpot (TM) 64-Bit Server VM (compilación 23.6-b04, modo mixto)

He visto esta pregunta aquí antes, pero en una no había resolución, y en la otra era un problema de Eclipse, pero obtengo este error cuando accedo a tomcat directamente.

¿Cómo averiguo qué "IA plataforma de 32 bits" se está detectando y cómo señalo a Tomcat en la dirección correcta? Además, ¿podría ser esta la razón por la que mi servlet está recibiendo este error 404 a través de Eclipse?

tipo informe de estado

mensaje / JSPandServlet / Controller

Descripción El recurso solicitado no está disponible.

Registros:

C: / Archivos de programa (x86) / apache-tomcat-7.0.34 / bin> configtest.bat

Usando CATALINA_BASE: "C: / Archivos de programa (x86) / apache-tomcat-7.0.34"

Usando CATALINA_HOME: "C: / Archivos de programa (x86) / apache-tomcat-7.0.34"

Usando CATALINA_TMPDIR: "C: / Archivos de programa (x86) / apache-tomcat-7.0.34 / temp"

Usando JRE_HOME: "C: / Archivos de programa (x86) / Java / jre7"

Uso de CLASSPATH: "C: / Archivos de programa (x86) / apache-tomcat-7.0.34 / bin / bootstra p.jar; C: / Archivos de programa (x86) / apache-tomcat-7.0.34 / bin / tomcat-juli .tarro"

java.lang.UnsatisfiedLinkError: C: / Archivos de programa (x86) / apache-tomcat-7.0.34 / bin / tcnative-1.dll: No se puede cargar AMD 64-bit .dll en una plataforma IA de 32 bits

at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary1(Unknown Source) at java.lang.ClassLoader.loadLibrary0(Unknown Source) at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runtime.loadLibrary0(Unknown Source) at java.lang.System.loadLibrary(Unknown Source) at org.apache.tomcat.jni.Library.<init>(Library.java:42) at org.apache.tomcat.jni.Library.initialize(Library.java:174) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.catalina.core.AprLifecycleListener.init(AprLifecycleListener.java:180) at org.apache.catalina.core.AprLifecycleListener.isAprAvailable(AprLifecycleListener.java:85) at org.apache.catalina.connector.Connector.setProtocol(Connector.java:595) at org.apache.catalina.connector.Connector.<init>(Connector.java:69) at org.apache.catalina.startup.ConnectorCreateRule.begin(ConnectorCreateRule.java:62) at org.apache.tomcat.util.digester.Digester.startElement(Digester.java:1276) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Unknown Source) at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1537) at org.apache.catalina.startup.Catalina.load(Catalina.java:610) at org.apache.catalina.startup.Catalina.load(Catalina.java:658) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:281) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:455)

26 de diciembre de 2012 a las 7:15:47 p.m. org.apache.catalina.core.AprLifecycleListener init

INFO: La biblioteca nativa Apache Tomcat Native que permite una mejor performance en entornos de producción no se encontró en java.library.path: C: / Archivos de programa (x86) / Java / jre7 / bin; C: / windows / Sun / Java / bin; C: / windows / system32; C: / windows; C: / Archivos de programa / Archivos comunes / Microsoft Shared / Microsoft Online Services; C: / Archivos de programa (x86) / Archivos comunes / Microsoft Shared / Microsoft Online Services ; C: / Archivos de programa / Archivos comunes / Microsoft Shared / Windows Live; C: / Archivos de programa (x86) / Archivos comunes / Microsoft Shared / Windows Live; C: / Archivos de programa (x86) / PHP /; C: / windows / system32; C: / windows; C: / windows / System32 / Wbem; c: / Archivos de programa (x86) / Microsoft SQLServer / 100 / Tools / Binn /; c: / Archivos de programa / Microsoft SQL Server / 100 / Tools / Binn /; c: / Archivos de programa / Microsoft SQL Server / 100 / DTS / Binn /; c: / Archivos de programa (x86) / Microsoft ASP.NET / ASP.NET Páginas web / v1.0 /; c: / Archivos de programa (x86) / Microsoft SQL Server / 10 0 / Herramientas / Binn / VSShell / Common7 / IDE /; c: / Archivos de programa (x86) / Microsoft SQL Server / 100 / DTS / Binn /; C: / Archivos de programa (x86) /Viento ows Live / Shared; C: / Archivos de programa / TortoiseSVN / bin; C: / Archivos de programa / Microsoft / Web Platform Installer /; C: / Archivos de programa / SourceGear / Common / DiffMerge /; C: / Ruby193 / bin ;.

26 de diciembre de 2012 a las 7:15:47 p. Org.apache.coyote.AbstractProtocol init

INFORMACIÓN: Inicializando ProtocolHandler ["http-bio-8080"]

26 de diciembre de 2012 a las 7:15:47 p. Org.apache.coyote.AbstractProtocol init

INFORMACIÓN: Inicializando ProtocolHandler ["ajp-bio-8009"]

26 de diciembre de 2012 7:15:47 PM org.apache.catalina.startup.Catalina carga

INFORMACIÓN: Inicialización procesada en 448 ms


Acabo de encontrar la solución. El problema era que mi JRE_HOME apuntaba a un JRE de 32 bits donde en mi máquina había una máquina de 64 bits. Instalé el JRE de 64 bits y lo reemplacé en la variable del sistema y el servidor comenzó limpio


Oh hombre, encontré el problema. Tenía un JRE antiguo en un lugar extraño al que JRE_HOME estaba accediendo. Eliminé ese directorio, arreglé mis variables de entorno y eso me ocupó.


Para el mismo mensaje "No se puede cargar IA-32-bit .dll en una plataforma AMD de 64 bits" al intentar ejecutar un esclavo Jenkins en una máquina con Windows de 64 bits, se solucionó eliminando las variables de entorno JAVA_TOOL_OPTIONS y _JAVA_OPTIONS que apuntaban a 32 bit jvmhook.


Por favor, compruebe su versión predeterminada señalada por eclipse. Propiedades-> Compilador de Java . Cambie a su versión de JRE instalada. Esto funcionó para mí. Gracias.


Verifique su versión de Project SDK utilizada por IDE.

In Intellij IDEA: File -> Project Structure -> Project. In Eclipse: Properties -> Java Compiler.

Cambie a la versión JDK x64 instalada.