Can't load AMD 64-bit .dll on a IA 32-bit platform 问题

本文解决了一个常见的Tomcat运行问题,即基于APR的本地库加载失败。问题出现在尝试在一个32位平台上加载64位的tcnative-1.dll。解决办法是下载并替换为32位版本的dll文件。

解决办法:下载一个32位的tcnative-1.dll替换tomcat原先的即可。

0-Dec-2019 09:14:57.113 警告 [main] org.apache.catalina.core.AprLifecycleListener.init 基于APR的本地库加载失败.
错误报告为[D:\java\tomcat\apache-tomcat-9.0.27\bin\tcnative-1.dll: 
Can't load AMD 64-bit .dll on a IA 32-bit platform]java.lang.UnsatisfiedLinkError: D:\java\tomcat\apache-tomcat-9.0.27\bin\tcnative-1.dll: 
Can't load AMD 64-bit .dll on a IA 32-bit platformat java.lang.ClassLoader$NativeLibrary.load(Native Method)
……………………………………

下载地址:http://www.apache.org/dist/tomcat/tomcat-connectors/native/

(我下载的是tomcat-native-1.2.21-openssl-1.1.1a-win32-bin.zip,问题解决了!)

具体原因请看:https://blog.youkuaiyun.com/xiaokui_wingfly/article/details/8736142

当出现“D:\Java\Tools\apache - tomcat - 9.0.111\bin\tcnative - 1.dll: Can't load AMD 64 - bit .dll on a IA 32 - bit platform”错误时,意味着在32位平台尝试加载64位的`tcnative - 1.dll`文件,可通过以下方法解决: ### 方法一:更换为32位的`tcnative - 1.dll`文件 1. 从官方渠道或可靠的资源网站下载与32位平台兼容的`tcnative - 1.dll`文件。 2. 将下载好的32位`tcnative - 1.dll`文件替换掉`D:\Java\Tools\apache - tomcat - 9.0.111\bin`目录下原有的64位`tcnative - 1.dll`文件。 3. 重新启动Tomcat,查看问题是否解决。 ### 方法二:使用与平台位数匹配的Tomcat版本 1. 卸载当前64位的Tomcat版本。 2. 下载并安装32位的Tomcat版本,确保其与当前系统的32位平台兼容。 3. 重新配置新安装的32Tomcat,并启动服务,查看问题是否解决。 ### 方法三:将`tcnative - 1.dll`文件拷贝到Java库路径 1. 查看`java.library.path`环境变量的值,该值指定了Java查找本地库的路径。可以通过以下Java代码查看: ```java public class PrintJavaLibraryPath { public static void main(String[] args) { System.out.println(System.getProperty("java.library.path")); } } ``` 2. 将`D:\Java\Tools\apache - tomcat - 9.0.111\bin`目录下的`tcnative - 1.dll`文件拷贝到`java.library.path`中的任意一个路径下。例如,如果`java.library.path`包含`C:\Tools\jdk1.6.0_29\bin`,则将`tcnative - 1.dll`文件拷贝到该目录下。 3. 重新启动Tomcat,查看问题是否解决。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值