服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - Tomcat - environments was not found on the java.library.path 问题的解决方法

environments was not found on the java.library.path 问题的解决方法

2021-11-05 19:23Tomcat教程网 Tomcat

The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path 问题的解决方法,需要的朋友可以参考下

tomcat 启动出现信息如下:

信息: the apr based apache tomcat native library which allows optimal performance in production environments was not found on the java.library.path:xxxx

出现原因分析:

tomcat建议使用apache的apr,来更好的运行tomcat;

apache的apr 的介绍

apr(apache portable run-time libraries,apache可移植运行库)的目的如其名称一样,主要为上层的应用程序提供一个可以跨越多操作系统平台使用的底层支持接口库。在早期 的apache版本中,应用程序本身必须能够处理各种具体操作系统平台的细节,并针对不同的平台调用不同的处理函数。

随着apache的进一步开发,apache组织决定将这些通用的函数独立出来并发展成为一个新的项目。这样,apr的开发就从apache中独立出来,apache仅仅是使用 apr而已。

apr使得平台细节的处理进行下移。对于应用程序而言,它们根本就不需要考虑具体的平台,不管是unix、linux还是window,应用程序执行的接口基本都是统一一致的。因此对于apr而言,可移植性和统一的上层接口是其考虑的一个重点。而apr最早的目的并不是如此,它最早只是希望将apache中用到的所有代码合并为一个通用的代码库,然而这不是一个正确的策略,因此后来apr改变了其目标。有的时候使用公共代码并不是一件好事,比如如何将一个请求映射到线程或者进程是平台相关的,因此仅仅一个公共的代码库并不能完成这种区分。apr的目标则是希望安全合并所有的能够合并的代码而不需要牺牲性能。

apr的最早的一个目标就是为所有的平台(不是部分)提供一个公共的统一操作函数接口,这是一个非常了不起的目的,当然也是不现实的一个目标。我们不可能支持所有平台的所有特征,因此apr目前只能为大多数平台提供所有的apr特性支持,包括win32、os/2、beos、darwin、linux等等。为了能够实现这个目标,apr开发者必须为那些不能运行于所有平台的特性创建了一系列的特征宏(feature macros)以在各个平台之间区分这些特征。这些特征宏定义非常简单,通常用apr_has_feature参数设置:

如果某个平台具有这个特性,则该宏必须设置为true,比如linux和window都具有内存映射文件,同时apr提供了内存映射文件的操作接口,因此在这两个平台上,apr_has_mmap宏必须设置,同时ap_mmap_*函数应该将磁盘文件映射为内存并返回适当的状态码。如果你的操作系统并不支持内存映射,那么apr_has_mmap必须设置为0,而且所有的ap_mmap_*函数也可以不需要定义。第二步就是对于那些在程序中使用了不支持的函数必须提出警告。

解决方法一:

下载与你tomcat对应版本的 tcnative-1.dll,放到apache-tomcat-7.0.57\bin 目录下,重启tomcat。

下载地址:

如果你不清楚版本,你随便下载一个版本,放进目录里面,在重启tomcat 的时候,会有提示你合适的 tcnative-1.dll 版本。

1、

environments was not found on the java.library.path 问题的解决方法

2.

environments was not found on the java.library.path 问题的解决方法

3.

environments was not found on the java.library.path 问题的解决方法

4.

environments was not found on the java.library.path 问题的解决方法

解决方法二、

这是一个apr的问题,因为tomcat需要依赖apr来优化性能,就需要安装apr

1、首先安装apr,采用源码安装的方式,默认安装在:/usr/local/apr

wget http://mirrors.cnnic.cn/apache//apr/apr-1.5.2.tar.gz
tar -zxvf apr-1.5.0.tar.gz
cd apr-1.5.0
./configure
make
make install

2、接下来安装tomcat-native,这个gz包在tomcat的bin目录下面已经存在了,直接解压tomcat-native;

进入目录:cd   tomcat-native-1.2.7-src/native,然后编译安装:

./configure --with-apr=/usr/local/apr  --with-java-home="/usr/lib/jvm/java-1.7.0" --with-ssl=yes

如果下载的tomcat版本较新的话,编译安装会出现openssl版本不一致的问题,无法安装,如下错误:

checking openssl library version >= 1.0.2... configure: error: your version of openssl is not compatible with this version of tcnative

这事就需要下载一个版本低一点的tomcat-native包:

wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-connectors/native/1.1.34/source/tomcat-native-1.1.34-src.tar.gz

上面的gz包下载下来之后,放到tomcat的bin目录下去,解压,进入目录:cd  tomcat-native-1.1.20-src/jni/native,再编译安装

3、编译安装成功之后,在tomcat的bin目录下,新建一个名为setenv.sh的文件

新建文件中加入内容:

ld_library_path=$ld_library_path:$catalina_home/lib
         export ld_library_path
4、经过上述三步,第一个问退可以解决;

延伸 · 阅读

精彩推荐
  • TomcatCentOS系统下安装Tomcat7的过程详解

    CentOS系统下安装Tomcat7的过程详解

    今天开始学习Tomcat7 ,学习前首先需要安装,我用的系统是CentOS系统,所以下面这篇文章主要介绍了CentOS系统下安装Tomcat7的过程,需要的朋友可以参考下,下...

    上品物语5902021-08-16
  • Tomcatidea打包成war包部署到tomcat及访问路径问题(图文详解)

    idea打包成war包部署到tomcat及访问路径问题(图文详解)

    这篇文章主要介绍了idea打包war包部署到tomcat以及访问路径问题,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴...

    Ma_Bu_Teng7952021-09-12
  • TomcatTomcat核心组件及应用架构详解

    Tomcat核心组件及应用架构详解

    众所周知Tomcat 就是一个 Servlet 容器,为了方便使用,他们具有http服务器的功能,所以Tomcat 就是一个“HTTP 服务器 + Servlet 容器”,我们也叫它们 Web 容器,...

    PoetryAndTheDistance12612021-09-24
  • TomcatTomcat日志文件定时清理备份的脚本

    Tomcat日志文件定时清理备份的脚本

    这篇文章主要介绍了Tomcat日志文件定时清理备份的脚本的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下...

    jaamy8492021-08-15
  • Tomcattomcat的配置使用详细版(小结)

    tomcat的配置使用详细版(小结)

    开发者开发部署web应用时通常使用tomcat服务器,这篇文章主要介绍了tomcat的配置使用详细版(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参...

    yumiaoxa5592021-08-31
  • Tomcat如何在IntelliJ IDEA 2018上配置Tomcat并运行第一个JavaWeb项目

    如何在IntelliJ IDEA 2018上配置Tomcat并运行第一个JavaWeb项目

    这篇文章主要介绍了在IntelliJ IDEA 2018上配置Tomcat并运行第一个JavaWeb项目,需要的朋友可以参考下...

    「已注销」4242021-09-15
  • TomcatMac+IDEA+Tomcat配置的方法步骤

    Mac+IDEA+Tomcat配置的方法步骤

    本主要介绍了Mac+IDEA+Tomcat配置的方法步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    海M滨8062021-11-14
  • Tomcat解决Tomcat10 Catalina log乱码问题

    解决Tomcat10 Catalina log乱码问题

    这篇文章主要介绍了解决Tomcat10 Catalina log乱码问题,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的...

    条卯李系瓜皮10672021-09-17