当我调试 tomcat 时,broswer 启动但得到 404:
HTTP Status 404 - /
type Status report
message /
description The requested resource is not available.
Apache Tomcat/7.0.75
Tomcat Catalina Log 和 Server Log 都有以下错误:
The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /Users/luowensheng/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.
我搜索了SO,找到了一个类似的帖子:
What does "The APR based Apache Tomcat Native library was not found" mean?
我的软件环境是:
Mac OS
IntelliJ IDEA
最佳答案
HTTP Status 404 - /
这个错误是由很多问题引起的,例如:
- 此错误主要是由于路径无效而引发的。确保存在以下文件夹:
> $cataline_home/webapps/your-project| > -->html,css,images, etc. > -->WEB-INF| > -->classes (your java files) > -->lib (your libraries)
- 确保您的机器上安装了 java。您可以通过在命令提示符下简单地运行
javac
或使用 java -version 来检查它
- 您输入了错误的 URL 地址或不完整的 URL 或没有 tomcat 端口的 URL
- 还要确保您在 web.xml 文件中正确添加了类
installing Tomcat APR in MAC is HERE and for Linux following is tested by myself
信息:在 java.library.path 上未找到基于 APR 的 Apache Tomcat Native 库,它允许在生产环境中实现最佳性能
安装 APR 的先决条件 APR图书馆 APR-util 库 OpenSSL 库
yum install openssl-devel
yum groupinstall "Development Tools"
mkdir tomcat-apr
cd tomcat-apr
wget http://www.us.apache.org/dist//apr/apr-1.5.2.tar.gz
tar -zxvf apr-1.5.2.tar.gz
cd apr-1.5.2
./configure
make
make install
默认安装路径为/usr/local/apr
Download and Install APR-util
wget http://www.eu.apache.org/dist//apr/apr-util-1.5.4.tar.gz
tar -zxvf apr-util-1.5.4.tar.gz
cd apr-util-1.5.4
./configure --with-apr=/usr/local/apr
make
make install
默认安装路径为/usr/local/apr/lib 为 Tomcat (libtcnative) 使用的 APR 安装 JNI Wrapper
cd $CATALINA_HOME/bin
tar -zxvf tomcat-native.tar.gz
cd tomcat-native-1.1.29-src/jni/native
./configure --with-apr=/usr/local/apr --with-java-home=/var/java/jdk1.7.0_45
make
make install
本地库安装在/usr/local/apr/lib 将 APR 与 Tomcat 集成 有两种方法可以设置 Tomcat 与 APR 集成。
一种是在启动Tomcat时可以在bin/catalina.sh中加入如下参数: CATALINA_OPTS="-Djava.library.path=/usr/local/apr/lib"
另一种是在/etc/profile中添加一个新的环境变量LD_LIBRARY_PATH:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib
然后通过以下方式使其生效:
source /etc/profile
重启Tomcat服务后,如果APR安装成功,我们可以在catalina.out日志中看到如下信息。
Oct 07, 2015 8:08:54 AM org.apache.catalina.core.AprLifecycleListener init INFO: Loaded APR based Apache Tomcat Native library 1.1.29 using APR version 1.5.2. Oct 07, 2015 8:08:54 AM org.apache.catalina.core.AprLifecycleListener init INFO: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
关于java - 在 java.library.path 上找不到基于 APR 的 Apache Tomcat Native 库,它允许在生产环境中实现最佳性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42871924/