分享文章
SpringBoot内置tomcat的APR版本过低解决思路
目中遇到了这样一个错误:
ERROR 15396 --- [main] o.a.catalina.core.AprLifecycleListener : An incompatible version [1.1.33] of the APR based Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]
截图如下:

错误解释:
从字面意思来看:安装的基于APR的Apache Tomcat Native 库的版本是1.1.33,而Tomcat需要的版本是1.2.14. 意思就是让你将Apache Tomcat Native 升级。
错误原因:(可以略过不看)
错误信息中有两个关键词:
APR 与 Apache Tomcat Native library
什么是APR?
Apache的APR是一个高度可移植的库,是Apache HTTP Server 2.x的核心。提供了卓越的性能,可伸缩性以及与本机服务器技术的更好集成。并且APR有许多的用途,包括访问高级IO功能,操作系统级功能和本机进程处理。
什么是Apache Tomcat Native library?
Apache Tomcat Native Library是与Apache Tomcat一起使用的可选组件,它允许Tomcat使用某些本机资源来提高性能,兼容性等 。其实就是说Apache Tomcat Native Library使Tomcat可以访问Apache Portable Runtime(APR)库。
原因:
知道了以上的知识点后,我们就能很好的理解错误发生原因了。
简单点说就是Apache Tomcat Native Library组件的版本比较低,跟不上你现在使用的APR库了。那么Tomcat访问APR库就可能出现问题了。因为Apache Tomcat Native Library是使Tomcat可以访问APR库的组件。
解决步骤:
- 点击下面链接,下载对应的版本文件,我这里需要的是1.2.14,因此我下载1.2.14即可,下载的内容中有32位和64位,根据自己的操作系统、JDK、Tomcat版本进行选择。
- 链接如下:http://archive.apache.org/dist/tomcat/tomcat-connectors/native/
- 将 tcnative-1.dll 文件复制到JDK的bin目录下(默认放在环境变量配置的JDK下面。如果存在多个JDK,那么项目使用的是哪个JDK,就放到那个JDK下面)
- 重启SpringBoot程序即可。

[超站]友情链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/
关注网络尖刀微信公众号随时掌握互联网精彩
- 1 日本附近海域发生7.5级地震 7808192
- 2 日本发布警报:预计将出现最高3米海啸 7712076
- 3 全国首艘氢电拖轮作业亮点多 7617463
- 4 课本上明太祖画像换了 7524410
- 5 中国游客遇日本地震:连滚带爬躲厕所 7427923
- 6 女子自驾进猛兽区被老虎咬掉车漆 7328693
- 7 日本地震当地居民拍下自家书柜倒塌 7234994
- 8 最高13万元一只!实验猴价格暴涨 7139657
- 9 “人造太阳”何以照进现实 7044493
- 10 男子开保时捷跑顺风车 偷190块电瓶 6945849







杨嘉玲
