Tomcat7tcnative-1.dll:无法在AMD 64位平台上加载IA 32位.dll

时间:2015-10-16 15:31:33

标签: java apache tomcat java-ee

我在tcnative-1.dll Can't load AMD 64-bit .dll on a IA 32-bit platform下面的这篇文章中发生了同样的问题,但这是相反的 虽然下面运行Tomcat-7.0.47是我的详细信息和logs.I已经尝试按照上面的所有发布而没有运气...请帮助我!

我也下载了64位JRE,并仔细检查了我的java版本

  

C:\ Users \ franklu> java -version java version" 1.7.0_55" Java(TM)SE运行时环境(版本1.7.0_55-b13)Java HotSpot(TM)64位服务器VM(版本24.55-b03,混合模式)

仔细检查了我的系统变量

JAVA_HOME指向C:\Program Files\Java\jdk1.7.0_55 JRE_HOME指向C:\Program Files\Java\jre7

我已经仔细检查了控制面板\所有控制面板项目\程序和功能

下安装的java

我已经仔细检查了Java 7更新55(64位)java SE开发工具包7更新55(64位)

我有双重检查属性---> java编译器及其指向JavaSE-1.7

以下是我的日志....这是在尝试启动Tomcat-7.0.47时发生的事情。请帮助....我已经尝试谷歌近3小时,我的头即将爆炸或指向我任何材料......无论如何,我都准备好加倍努力......

  

java.lang.UnsatisfiedLinkError:C:\ Application \ Tomcat-7.0.47 \ bin \ tcnative-1.dll:无法在java的AMD 64位平台上加载IA 32位.dll。 lang.ClassLoader $ NativeLibrary.load(Native Method),位于java.lang.ClassLoader.loadLibrary0(未知来源)的java.lang.ClassLoader.loadLibrary0(未知来源),位于java的java.lang.ClassLoader.loadLibrary(未知来源)。位于org.apache.tomcat.jib.Library的org.apache.tomcat.jni.Library。(Library.java:42)的java.lang.System.loadLibrary(Unknown Source)中的lang.Runtime.loadLibrary0(Unknown Source)。初始化(Library.java:174)sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)at java.lang.reflect位于org.apache.catalina.core.AprLifecycleListener.init(AprLifecycleListener.java:164)的org.apache.catalina.core.AprLifecycleListener.isAprAvailable(AprLifecycleListener.java:81)org的.Method.invoke(未知来源)。位于org.apache.catalina.startup.ConnectorCreateRule.begin(ConnectorCreateRule.java)的org.apache.catalina.connector.Connector。(Connector.java:71)中的apache.catalina.connector.Connector.setProtocol(Connector.java:541) :62)at.com.apache.tomcat.util.digester.Digester.startElement(Digester.java:1282)at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Unknown Source)at com.sun来自com.sun.org.apache.xerces的com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(未知来源)的.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(未知来源) .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 com.sun的com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(未知来源)中的.XMLDocumentFragmentScannerImpl.scanDocument(未知来源)。来自com.sun.org.apache.xerces的com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(未知来源)的org.apache.xerces.internal.parsers.XML11Configuration.parse(未知来源)。在org.apache.tomcat.util.digester.Digester.parse的com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl $ JAXPSAXParser.parse(未知来源)的internal.parsers.AbstractSAXParser.parse(未知来源)( Digester.java:1543)org.apache.catalina.startup.Catalina.load(Catalina.java:554)atg.apache.catalina.startup.Catalina.load(Catalina.java:595)at sun.reflect.NativeMethodAccessorImpl位于org.apache.catalina的java.lang.reflect.Method.invoke(未知来源)sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源)的sun.reflect.NativeMethodAccessorImpl.invoke(未知来源)的.invoke0(本地方法) .startup.Bootstrap.load(Bootstrap.java:262)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:430)2015年10月15日下午5:13:31 org.apache.catalina.core。 AprLifecycleListener init

3 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。问题是我使用64位java。将JAVA_HOME和JRE_HOME更改为指向32位java修复了问题

答案 1 :(得分:0)

我在我的机器上遇到了同样的问题,你的TOMCAT是64位,因为它使用的是JAVA,即32位。一旦你得到这个,你需要检查以下内容:

  1. 获取Tomcat并检查它是32位还是64位(此处为64位)
  2. 检查tomcat使用的java_home
  3. 一旦你得到正确的jdk,那么检查java是32位还是64位。
  4. 打开cmd并按下命令:

    java -d64 -version
    

    如果这告诉你正确的java版本,那么安装的java就是64,否则就是32.请获取64版本的java,并在环境变量或catalina.bat文件中指向与JAVA_HOME相同。

    希望这会纠正你的问题。

答案 2 :(得分:0)

我有同样的问题, 我下载了一个32位的tomcat,并将其添加到Intellij中,现在工作正常。