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中安装缺少的模块 cpan\[1\]\> install IPC/Cmd.pm 解决问题 再次执行: ./config --prefix=/usr/local/openssl \&\& make -j 4 \&\& make install 查看openssl安装结果 openssl version !!!版本不对 卸载旧版本 1. 使用命令查看openssl是否已安装: rpm -qa \| grep openssl 2. 如果有安装,使用的命令卸载: yum remove openssl 3. 验证是否已卸载: 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

相关推荐
扯淡的闲人5 分钟前
多语言编码Agent解决方案(4)-Eclipse插件实现
java·ide·eclipse
杨杨杨大侠19 分钟前
Atlas Mapper 教程系列 (7/10):单元测试与集成测试
java·开源·github
叽哥22 分钟前
Kotlin学习第 7 课:Kotlin 空安全:解决空指针问题的核心机制
android·java·kotlin
guslegend36 分钟前
Java面试小册(3)
java
派葛穆38 分钟前
Unity-按钮实现场景跳转
java·unity·游戏引擎
弥巷39 分钟前
【Android】Viewpager2实现无限轮播图
java
虫小宝1 小时前
返利app排行榜的缓存更新策略:基于过期时间与主动更新的混合方案
java·spring·缓存
SimonKing1 小时前
告别繁琐配置!Retrofit-Spring-Boot-Starter让HTTP调用更优雅
java·后端·程序员
召摇1 小时前
Spring Boot 内置工具类深度指南
java·spring boot
JJJJ_iii1 小时前
【左程云算法09】栈的入门题目-最小栈
java·开发语言·数据结构·算法·时间复杂度