在启动Tomcat项目时,系统提示org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path:这一错误信息。该提示表示Tomcat未能在java.library.path路径中找到基于APR(Apache Portable Runtime)的本地库文件。APR库能够提升Tomcat在生产环境中的性能表现,尤其是在处理高并发请求时具有更好的资源利用效率和响应速度。然而,在许多开发或测试场景下,即使未加载该组件,Tomcat依然可以正常运行并成功启动项目,因此该警告并不一定导致应用无法访问或功能异常。出现此提示通常是因为未安装或未正确配置Tomcat Native库,或者相关动态链接库未被加入到系统的库搜索路径中。若当前环境对性能要求不高,可暂时忽略此提示;但若部署于高负载的生产服务器,则建议下载对应版本的Tomcat Native组件,并将其库文件放置于系统可识别的路径下,同时确保操作系统架构与库文件兼容,以充分发挥Tomcat的最佳性能。
1、 在部署项目时多次遇到问题,特此记录以便排查。通过uname -a命令查看操作系统信息,并检查Tomcat版本,具体所示。
2、 下载apr与OpenSSL安装包,具体所示。
3、 将下载完成的安装包上传到已部署Tomcat的服务器,具体操作所示。
4、 执行命令tar -zxvf apr-1.6.2.tar.gz对安装包进行解压,完成后进入解压目录,使用命令cd apr-1.6.2切换至该文件夹。操作效果所示。
5、 通过执行./configure && make && make install命令安装apr,成功后系统会在/usr/local路径下生成名为apr的目录,具体结果所示。
6、 通过yum工具安装apr-util所需的expat依赖,执行命令yum install expat expat-devel -y即可,具体操作所示。
7、 进入存放apr相关安装包的目录,执行cd ..命令返回上级目录。随后通过tar -zxvf apr-util-1.6.1.tar.gz命令解压该压缩包,完成解压后,进入解压生成的文件夹,输入cd apr-util-1.6.1切换至该目录,准备后续操作。操作过程清晰明了,便于继续安装配置。
8、 使用./configure --with-apr=/usr/local/apr命令对apr-util进行配置,其中--with-apr参数指定的路径为先前安装的apr所在目录。配置成功后,执行make && make install命令开始编译并安装apr-util组件。整个过程无需额外干预,系统将自动完成源码编译和文件复制。当终端中出现/usr/bin/install -c -m 755 apu-config.out /usr/local/apr/bin/apu-1-config的输出信息时,表明安装流程已顺利完成。该提示意味着相关可执行文件已被正确复制到目标路径,apr-util的功能模块已部署到位,可以供后续软件调用使用。整个安装过程依赖于前一步骤中apr的正确安装,路径设置需保持一致,否则可能导致配置失败。具体界面效果可参考相应操作示意图。
9、 由于Tomcat 8.5.46要求OpenSSL版本不低于1.0.2,因此首先需确认当前系统中OpenSSL的版本是否满足条件。通过执行openssl version命令查看当前版本信息,若显示版本号大于或等于1.0.2,则可跳过升级步骤,直接进入后续操作。若版本较低,则需要进行升级处理。在此之前,已将OpenSSL安装包上传至服务器。首先使用cd ..命令返回上级目录,进入存放安装包的路径;随后运行tar -zxvf openssl-1.0.2t.tar.gz对压缩包进行解压,并通过cd openssl-1.0.2t进入解压后的文件夹,准备进行编译安装。然而,在实际检查过程中,发现当前环境中的OpenSSL版本仍不达标。尝试再次执行openssl version时出现异常提示,表明系统未正确安装或配置OpenSSL。此时改用yum包管理工具进行安装,执行yum install openssl openssl-devel -y命令,自动下载并安装OpenSSL及其开发组件。安装过程完成后,重新运行版本查询命令,确认新版本已成功部署,达到Tomcat所要求的最低标准,从而为后续配置提供支持。整个过程确保了基础依赖环境的合规性与稳定性。
10、 配置 OpenSSL 时,执行命令./config -fPIC --prefix=/usr/local/openssl/ enable-shared,其中 --prefix 指定安装目录,即 OpenSSL 安装后的路径。具体操作中所示,按步骤完成配置即可进入后续编译与安装流程。
11、 安装 OpenSSL,执行命令make && make install,具体操作所示。
12、 为OpenSSL配置软链接,可通过执行两条命令实现:首先运行ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl,将可执行文件链接至系统路径;接着执行ln -s /usr/local/openssl/include/openssl/ /usr/include/openssl,将头文件目录链接到标准包含路径。操作完成后,系统即可正确识别并使用指定版本的OpenSSL,相关设置效果所示。
13、 再次执行openssl version命令查看版本信息,若显示的版本号与新安装的升级包一致,即表示升级成功,具体结果所示。
14、 进入Tomcat安装路径下的bin文件夹,例如将Tomcat安装在/usr/local目录中,可通过执行命令cd /usr/local/tomcat/bin/切换至该目录,操作界面所示。此步骤主要用于启动或管理Tomcat服务,是进行后续操作的基础准备。
15、 执行tar -zxvf tomcat-native.tar.gz命令解压native文件,随后进入解压后的目录,输入cd tomcat-native-1.2.23-src/即可完成切换,具体操作所示。
16、 进入native目录,可通过执行cd native/命令实现。随后,在该目录下运行配置指令:./configure --with-apr=/usr/local/apr --with-java-home=/usr/local/java/jdk1.8.0_221 --with-ssl=/usr/local/openssl,以完成native组件的配置。其中,--with-apr=用于指定APR库的安装路径,需确保路径指向正确的APR根目录;--with-java-home=用于设置Java开发工具包JDK的安装位置,此处应与实际的JDK路径保持一致;--with-ssl=则用于关联OpenSSL库的安装目录,确保SSL相关功能正常启用。以上路径均需根据系统实际安装情况准确填写。配置过程中若无错误提示,则表示参数识别成功,可继续后续编译操作。具体执行效果可参考相应界面示意图。
17、 执行make && make install命令安装native,当终端显示libtool: install时表示安装成功,具体过程所示。
18、 使用 vi 编辑器打开系统环境配置文件,执行命令vi /etc/profile,将光标移至文件末尾,在其中新增一行内容:export LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:/usr/local/apr/lib,以完成库路径的环境变量设置,具体操作界面所示。
19、 返回到 Tomcat 的 bin 目录后,执行rm -f ../logs/*命令清除日志文件,随后运行./startup.sh启动服务。启动完成后,查看 catalina 日志信息,可见之前出现的错误已成功消除,系统恢复正常运行状态,具体结果所示。
20、 至此,关于java.library.path的解决方法已全部分享完毕,希望能为遇到类似问题的你提供一些帮助。文中若有不足之处,欢迎各位朋友批评指正,感谢大家的阅读与支持!
评论
更多评论