springboot使用内置tomcat启动时关于APR版本问题的报错

SpringBoot内置tomcat出现error:An incompatible version [1.1.32] of the APR based Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]。解决办法


启动tomcat过程中,发现经常出现一个错误,


2018-03-20 13:32:01.022 ERROR 13152 --- [ost-startStop-1] o.a.catalina.core.AprLifecycleListener   : An incompatible version [1.1.32] of the APR based Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]

原因分析:

字面意思就是当前版本为1.1.32,需要重新下载1.2.14以上版本。分析SpringBoot的tomcat为内置环境,所以将新版本文件放在java安装目录下即可。

Apache把 httpd的底层库与上层应用逻辑分离,底层库单独发行,底层这就是Apache Portable Runtime Library,简称APR。

APR在跨平台方面,支持多种平台,主要有:

​ UNIX variants Windows Netware Mac OS X OS/2

APR把很多常用功能都封装好了,内容非常丰富,主要有:

​ Atomic operations

Dynamic Shared Object loading

File I/O

Locks (mutexes, condition variables, etc)

Memory management (high performance allocators)

Memory-mapped files

Multicast Sockets

Network I/O

Shared memory

Thread and Process management

Various data structures (tables, hashes, priority queues, etc)

解决办法:

1.下载对应版本文件,链接如下:

http://archive.apache.org/dist/tomcat/tomcat-connectors/native/

2.解压后,在bin目录下找到tcnative-1.dll文件,我springboot环境为win10,64位系统,选择了x64文件下的dll文件。

3.将dll文件保存到jdk的bin目录中或者是jre的bin目录中,前提要求java的环境变量已经设置好(在高级设置-环境变量中设置查看)。

4.重新启动SpringBoot程序,即可。

2018-03-20 13:53:44.909  INFO 1728 --- [ost-startStop-1] o.a.catalina.core.AprLifecycleListener   : Loaded APR based Apache Tomcat Native library [1.2.14] using APR version [1.6.2].

启动信息可以看出,版本信息为1.6.2,错误消息没了。

网上也有关于替换tomcat和jdk 中bin下的文件,如此方法无效可以试下

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Springboot使用内置tomcat作为默认的web容器,无需额外安装Tomcat,只需在服务部署时直接启动jar包即可。这是因为在spring-boot-starter-web中,默认导入的是tomcat,所以启动时使用的web容器就是tomcat。如果你想配置使用其他的web容器,比如Undertow,可以按照以下步骤进行操作: 1. 修改pom.xml文件,排除默认引入的spring-boot-starter-tomcat依赖,并添加Undertow依赖: ```xml <dependencies> <!-- 导入web场景启动器 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- 排除tomcat starter --> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> <!-- 引入undertow --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-undertow</artifactId> </dependency> </dependencies> ``` 通过这样的配置,你就可以使用Undertow作为springboot内置web容器了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [SpringBoot如何使用内嵌Tomcat](https://blog.csdn.net/u011523825/article/details/126114624)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [SpringBoot内置Tomcat的配置和切换](https://blog.csdn.net/weixin_39158966/article/details/129745702)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值