ubuntu
TOMCAT昨天突然自己宕掉服务了,怎么重起都不行,后来查看logs中catalina.out 日志发现如下错误
INFO:
The Apache Tomcat Native
library which allows optimal performance in production environments was
not found on the java.
library.
path: /usr/local/jdk1.6.0_01/jre/lib/i386/client:/usr/local/jdk1.6.0_01/jre/lib/i386:/usr/local/jdk1.6.0_01/jre/../lib/i386:/usr/
java/packages/lib/i386:/lib:/usr/lib
Aug 24, 2007 1:20:27 PM org.apache.coyote.http11.Http11Protocol init
SEVERE: Error initializing endpoint
java.net.BindException: Address already in use:8080
....................
netstat -nlp 看到后台
java只有一个8015端口,而且有
127.0.0.1:8080 127.0.0.1:8080 ESTABLISHED的链接
很是奇怪,
google一下提示是要使用apr
由于是debian系统所以很容易安装需要的软件
apt-get install libapr1-dev apache2-utils
可是还是不行,错误照常出现。
重起服务器后一切正常。
win
当我下载Tomcat6.0.16并安装到eclise后,当任意建一个工程后,哪怕只有一个jsp页面的工程,启动Tomcat后都会有一个“警告”的提示(对工程与页面显示没有任何影响)。于是删除工程,只启动Tomcat服务器时,提示信息:
The Apache Tomcat Native
library which allows optimal performance in production environments was
not found on the java.
library.
path: ......,是说在产品环境下可以优化工作性能的Tomcat的本地包没有找到。于是我就把以前所学的有关classpath、
path相关的知识全用上设置一大类键值对,根本无法解决这个问题。
经过几个小时的上网搜索终于找到了解决方法:原来Tomcat从5.5版本后增加了APR技术(Apache Portable
Runtime),这是一个用C语言写成文件包,目的在于提高Tomcat的服务性能,从而使得Tomcat将不仅仅担任一个容器的功能,而是要成为一个
一般的web服务器(general purpose webserver)。现在是什么都涨,Tomcat的野心也在涨啊!
通过上述描述大家也就明白了,我们只要把那个本地文件下载过来,配置好之后,这些问题就会迎刃而解了,首先要到Tomcat网站上去下载:
http://tomcat.apache.org/download-native.cgi 找到
Native 1.1.13 Source Release zip 这是个源文件,如果你要自己编译就下这个,如果想使用已编译好的dll文件就点击这个链接下面的“Here“ 链接,找一个版本号最新的,进去可以下载一个tcnative-1.dll文件。
那么如何配置这个文件呢?简单一点就是把这个文件扔到windows/system32下面,因为我们已经在
path下配置好了这个路径,系统启动后就可以找到这个路径下的文件,如果想放到自己指定的位置,比如话到Tomcat安装路径下,那么就要在
path中指定好这个路径,我是这样做的,首先根据惯例在系统变量中设置CATALINA_HOME变量,然后再把%CATALINA_HOME%\bin加入到
path中,然后再把下载的dll文件放到 bin路径下就一切ok了。当然不做这些工作不会影Tomcat运行,萝卜白菜各有所爱了。
本文参考
http://www.blogjava.net/beansoft/archive/2006/12/22/89577.html