tomcat apr

apr安装

tomcat 启动报告:

信息 main org.apache.catalina.core.AprLifecycleListener.lifecycleEvent 在java.library.path:/usr/java/packages/lib:/usr/lib64:/lib64:/lib:/usr/lib上找不到基于APR的Apache Tomcat本机库,该库允许在生产环境中获得最佳性能

安装相关依赖包

yum -y install gcc gcc-c++ libtool* autoconf automake expat-devel perl perl-devel

下载安装包

https://dlcdn.apache.org//apr/

https://www.openssl.org/source/

apr

apr-iconv

apr-util

openssl

安装apr

tar zxvf apr-1.7.4.tar.gz

cd apr-1.7.4

./configure --prefix=/usr/local/apr && make && make install

安装apr-iconv

tar zxvf apr-iconv-1.2.2.tar.gz

cd apr-iconv-1.2.2

./configure --prefix=/usr/local/apr-iconv --with-apr=/usr/local/apr && make && make install

安装apr-util

tar zxvf apr-util-1.6.3.tar.gz

cd apr-util-1.6.3

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-apr-iconv=/usr/local/apr-iconv/bin/apriconv && make && make install

安装OpenSSL

tar zxvf openssl-3.2.0.tar.gz

cd openssl-3.2.0

./config --prefix=/usr/local/openssl && make -j 4 && make install

( -j 4 :开4个线程编译)

!!!!!!!!!出现问题 ---

root@192 package# cd openssl-3.2.0

root@192 openssl-3.2.0# ./config --prefix=/usr/local/openssl

Can't locate IPC/Cmd.pm in @INC (@INC contains: /usr/package/openssl-3.2.0/util/perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 . /usr/package/openssl-3.2.0/external/perl/Text-Template-1.56/lib) at /usr/package/openssl-3.2.0/util/perl/OpenSSL/config.pm line 19.

BEGIN failed--compilation aborted at /usr/package/openssl-3.2.0/util/perl/OpenSSL/config.pm line 19.

Compilation failed in require at /usr/package/openssl-3.2.0/Configure line 23.

BEGIN failed--compilation aborted at /usr/package/openssl-3.2.0/Configure line 23.

root@192 openssl-3.2.0# make -j 4 && make install

make: *** 没有指明目标并且找不到 makefile。 停止。

root@192 openssl-3.2.0#

问题描述 Can't locate IPC/Cmd.pm in

缺少IPC/Cmd.pm 模块

yum install -y perl-CPAN

进入perl shell中

perl -MCPAN -e shell

进入后第一步选yes,第二步选manual,第三步选yes

或:一路回车也可以

(时间比较长)

在shell中安装缺少的模块

cpan1> install IPC/Cmd.pm

解决问题

再次执行:

./config --prefix=/usr/local/openssl && make -j 4 && make install

查看openssl安装结果

openssl version

!!!版本不对

卸载旧版本

  1. 使用命令查看openssl是否已安装:

rpm -qa | grep openssl

  1. 如果有安装,使用的命令卸载:

yum remove openssl

  1. 验证是否已卸载:

rpm -qa | grep openssl

配置 /etc/ld.so.conf

尾部加入 /usr/local/openssl/lib64

ldconfig (没有用)

!!!又出状况

root@192 openssl-3.2.0# openssl version

-bash: /usr/bin/openssl: 没有那个文件或目录

root@192 openssl-3.2.0# ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

root@192 openssl-3.2.0# openssl version

openssl: error while loading shared libraries: libssl.so.3: cannot open shared object file: No such file or directory

root@192 openssl-3.2.0# ln -s /usr/local/openssl/lib64/libssl.so.3 /usr/lib64/libssl.so.3

root@192 openssl-3.2.0# openssl version

openssl: error while loading shared libraries: libcrypto.so.3: cannot open shared object file: No such file or directory

root@192 openssl-3.2.0# ln -sf /usr/local/openssl/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3

root@192 openssl-3.2.0# openssl version

OpenSSL 3.2.0 23 Nov 2023 (Library: OpenSSL 3.2.0 23 Nov 2023)

安装tomcat-native

cd tomcat_home/bin/

tar zxvf tomcat-native.tar.gz

cd tomcat-native-2.0.6-src/native

./configure --with-ssl=/usr/local/openssl --with-apr=/usr/local/apr/bin/apr-1-config --with-java-home=/usr/local/jdk/jdk-21.0.1/ && make && make install

添加变量内容

vim /etc/profile

#tomcat apr

export LD_LIBRARY_PATH=/usr/local/apr/lib

source /etc/profile

或配置在tomcat/bin/setclasspath.sh(写在setenv.sh中不行)

#apr

export LD_LIBRARY_PATH=/usr/local/apr/lib

结果

信息 main org.apache.catalina.core.AprLifecycleListener.lifecycleEvent 使用APR版本1.7.4加载了基于APR的Apache Tomcat本机库2.0.6

centos卸载自带jdk

rpm -qa | grep -i java

rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps

相关推荐
Bs_MoneyMagnet3 小时前
基于springboot+vue的滑雪场票务与装备租赁系统的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring·毕业设计·计算机毕业设计
野生技术架构师8 小时前
2026 Java 面试全套总结,八股 + 场景 + AI 相关面试考点
java·人工智能·面试
香吧香8 小时前
java服务异常日志只打印异常类型,没有堆栈定位分析
java·jvm·异常
qq_2518364579 小时前
AI 疾病自查功能SpringbootAI项目实战 · 技术实现文档
java·ai·ai编程
逆境不可逃10 小时前
Pi Agent 学习笔记:对话太长以后,如何压缩上下文
java
MetaLite10 小时前
JDK 8~26 核心特性一览:从 Stream 到 Scoped Values
java
wno70410 小时前
Spring Boot WebFlux增删改查
java·spring boot·后端
君顾110 小时前
上海24小时自助健身房系统开发实战指南:从架构设计到落地部署
java·开发语言·健身房
SL_staff11 小时前
别急着买商业规则引擎:90%风控场景根本不需要全量编码能力
java·程序员·groovy
ManageEngineITSM12 小时前
DevOps和ITIL是什么关系?是替代还是互补一文讲清
java·服务器·资产管理·变更管理