首页 文章

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

提问于
浏览
28

我尝试运行tomcat时收到此错误:

“java.lang.UnsatisfiedLinkError:C:\ Program Files(x86)\ apache-tomcat-7.0.34 \ bin \ tcnative-1.dll:无法在IA 32位平台上加载AMD 64位.dll ” .

但是,我已经下载了64位JRE,并仔细检查了我的java版本:

C:\ Program Files(x86)\ apache-tomcat-7.0.34 \ bin> java -version java version“1.7.0_10”Java(TM)SE运行时环境(版本1.7.0_10-b18)Java HotSpot(TM) 64位服务器VM(内置23.6-b04,混合模式)

我以前在这里看过这个问题,但是其中一个没有解决方案,另一个是Eclipse问题,但是当我直接访问tomcat时,我收到了这个错误 .

如何找出正在检测哪个“IA 32位平台”,以及如何将Tomcat指向正确的方向?这也就是为什么我的servlet通过Eclipse得到这个404错误的原因?

类型状态报告消息/ JSPandServlet / Controller描述请求的资源不可用 .

日志:

C:\ Program Files(x86)\ apache-tomcat-7.0.34 \ bin> configtest.bat

使用CATALINA_BASE:“C:\ Program Files(x86)\ apache-tomcat-7.0.34”

使用CATALINA_HOME:“C:\ Program Files(x86)\ apache-tomcat-7.0.34”

使用CATALINA_TMPDIR:“C:\ Program Files(x86)\ apache-tomcat-7.0.34 \ temp”

使用JRE_HOME:“C:\ Program Files(x86)\ Java \ jre7”

使用CLASSPATH:“C:\ Program Files(x86)\ apache-tomcat-7.0.34 \ bin \ bootstra p.jar; C:\ Program Files(x86)\ apache-tomcat-7.0.34 \ bin \ tomcat-juli . jar ”

java.lang.UnsatisfiedLinkError:C:\ Program Files(x86)\ apache-tomcat-7.0.34 \ bin \ tcnative-1.dll:无法在IA 32位平台上加载AMD 64位.dll

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)

2012年12月26日下午7:15:47 org.apache.catalina.core.AprLifecycleListener init

信息:在java.library.path中找不到基于APR的Apache Tomcat Native库,它允许在 生产环境 环境中实现最佳性能:C:\ Program Files(x86)\ Java \ jre7 \ bin; C:\ windows \ Sun \ Java \ bin; C:\ windows \ system32; C:\ windows; C:\ Program Files \ Common Files \ Microsoft Shared \ Microsoft Online Services; C:\ Program Files(x86)\ Common Files \ Microsoft Shared \ Microsoft Online Services ; C:\ Program Files \ Common Files \ Microsoft Shared \ Windows Live; C:\ Program Files(x86)\ Common Files \ Microsoft Shared \ Windows Live; C:\ Program Files(x86)\ PHP ; C:\ windows \ system32; C:\ windows; C:\ windows \ System32 \ Wbem; c:\ Program Files(x86)\ Microsoft SQLServer \ 100 \ Tools \ Binn ; c:\ Program Files \ Microsoft SQL Server \ 100 \ Tools \ Binn ; c:\ Program Files \ Microsoft SQL Server \ 100 \ DTS \ Binn ; c:\ Program Files(x86)\ Microsoft ASP.NET \ ASP.NET Web Pages \ v1.0 ; c:\ Program Files (x86)\ Microsoft SQL Server \ 10 0 \ Tools \ Binn \ VSShell \ Common7 \ IDE ; c:\ Program Files(x86)\ Microsoft SQL Server \ 100 \ DTS \ Binn ; C:\ Program Files(x86) \风ows Live \ Shared; C:\ Program Files \ TortoiseSVN \ bin; C:\ Program Files \ Microsoft \ Web Platform Installer ; C:\ Program Files \ SourceGear \ Common \ DiffMerge ; C:\ Ruby193 \ bin; .

2012年12月26日下午7:15:47 org.apache.coyote.AbstractProtocol init

信息:初始化ProtocolHandler [“http-bio-8080”]

2012年12月26日下午7:15:47 org.apache.coyote.AbstractProtocol init

信息:初始化ProtocolHandler [“ajp-bio-8009”]

2012年12月26日下午7:15:47 org.apache.catalina.startup.Catalina加载

信息:初始化在448毫秒内处理

6 回答

  • 0

    哦,伙计,我发现了问题 . 我在一个奇怪的地方有一个旧的JRE,JRE_HOME正在访问它 . 我删除了那个目录,修复了我的环境变量,并负责处理它 .

  • 1

    我刚刚找到了解决方案 . 问题是我的JRE_HOME指向32位JRE,我的机器是64位机器 . 我安装了64位JRE并将其替换为系统变量,服务器启动干净

  • 19

    请检查eclipse指向的默认版本 . Properties->Java Compiler . 将其切换到您安装的JRE版本 . 这对我有用 . 谢谢 .

  • 9

    请检查IDE使用的Project SDK版本 .

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

    将其切换到安装的JDK x64版本 .

  • 4

    尝试在64位Windows机器上运行Jenkins从机时,同样的消息“无法在AMD 64位平台上加载IA 32位.dll”,通过删除指向32的JAVA_TOOL_OPTIONS和_JAVA_OPTIONS环境变量来修复它位jvmhook .

  • 0

    我遇到的一些类似消息的问题是我通过Linux机器上的swig创建了共享本机库(libmyLic.so),将其复制到Windows,并且尝试运行我的java测试 . 此测试应该使用System.loadLibrary或System.load界面 . 它不起作用,因为swig为UNIX环境创建了我的共享本机库(将C代码包装到java) . 当我将所有测试复制到Linux时,它解决了这个问题 .

相关问题