Tomcat在eclipse环境下的配置问题


今天在Tomcat配置启动时,eclipse报出了如下错误:

<span style="color:#ff0000;">The APR</span> based Apache Tomcat Native library which allows optimal performance in production environments <span style="background-color: rgb(255, 255, 255);"><span style="color:#ff0000;">was not found</span></span> on the java.library.path: C:\Program Files\Java\jdk1.6.0\bin;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files\Java\jdk1.6.0\jre\bin;C:/Program Files/Java/jdk1.6.0/bin/../jre/bin/client;C:/Program Files/Java/jdk1.6.0/bin/../jre/bin;C:/Program Files/Java/jdk1.6.0/bin/../jre/lib/i386;C:\Program Files\MySQL\MySQL Server 5.5\bin;C:\Program Files\Java\jdk1.6.0\bin;d:\oracle\product\11.1.0\db_1\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\ATI Technologies\ATI.ACE\Core-Static;D:\work\eclipse-jee-helios-SR2-win32\eclipse;

然后我导入的WEB项目运行时存在一些问题,作为新手的我理所当然的以为肯定是Tomcat并没配置好,出现了问题。我简要的说一下 我这一天的解决过程:

  • 下载并配置tcnative1.dll文件

大部分的技术博客和百度知道都是这样说的:你的tomcat中的Bin目录下和C:/WINDOWS/system32/下都缺少一个这样的文件,只要你下载了对应版本的相关文件,并拷贝到这两个地方就可以了,然后就没有为什么了。

然而,tcnative1.dll文件并没有针对tomcat的版本产生对应的文件,也就是说你必须一个个去下载各种版本的tcnative1.dll,然后看看能不能碰巧解决你的问题,我试了我能下载的所有版本并一一尝试,很操蛋的没有一个能解决一个问题,其实这个问题根本无关紧要,是我小题大做了,后面会讲到。

  • 下载其他版本的tomcat进行尝试
我之前的tomcat是6.0.039,于是我尝试了7.0版本。

红色区域是压缩版,绿色区域是安装版(安装版的bin文件夹内没各种命令,如startup.bat,catalina.bat)。。
过程就不提了,7.0版本的问题更大,直接无法启动,类似与下面的结果:(7.0我已经删除了,结果我是复制别人的)


Tomcat v6.0 Server at localhost [Apache Tomcat]	
	org.apache.catalina.startup.Bootstrap at localhost:2329	
		Thread [main] (Suspended (exception NoSuchMethodException))	
			Class<T>.getMethod(String, Class...) line: not available	
			LogFactoryImpl.getLogConstructor() line: 409	
			LogFactoryImpl.newInstance(String) line: 502	
			LogFactoryImpl.getInstance(String) line: 285	
			LogFactoryImpl.getInstance(Class) line: 255	
			LogFactory.getLog(Class) line: 381	
			StartupListener.<init>() line: not available	
			NativeConstructorAccessorImpl.newInstance0(Constructor, Object[]) line: not available [native method]	
			NativeConstructorAccessorImpl.newInstance(Object[]) line: not available	
			DelegatingConstructorAccessorImpl.newInstance(Object[]) line: not available	
			Constructor<T>.newInstance(Object...) line: not available	
			Class<T>.newInstance0() line: not available	
			Class<T>.newInstance() line: not available	
			StandardContext.listenerStart() line: 3787	
			StandardContext.start() line: 4342	
			StandardHost(ContainerBase).start() line: 1045	
			StandardHost.start() line: 719	
			StandardEngine(ContainerBase).start() line: 1045	
			StandardEngine.start() line: 443	
			StandardService.start() line: 516	
			StandardServer.start() line: 710	
			Catalina.start() line: 578	
			NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]	
			NativeMethodAccessorImpl.invoke(Object, Object[]) line: not available	
			DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: not available	
			Method.invoke(Object, Object...) line: not available	
			Bootstrap.start() line: 288	
			Bootstrap.main(String[]) line: 413	
	D:\jre1.5.0_04\bin\javaw.exe (2009-10-19 上午09:36:01)	

完蛋了,貌似更严重了,我查了半天说的最靠谱的回答是:java上的servlet的api是6.0的,不适应用于现在7.0的版本上,我尝试了将7.0中lib内的servlet-api加入到jre中,但是没成功,放弃了压缩版。

选择安装版后,安装的过程倒是挺TM顺利的,妈蛋,感觉看到了胜利的曙光,然后,eclipse根本就启动不了,说是缺少启动的各种东西.........

以上办法不仅连startup.bat都启动不了,而且也无法通过localhost:8080来连接测试,为什么会这样

  • 放弃抵抗
过去了一整个白天,重新选择了6.0.39,开始考虑为什么自己那么作。现在心里只有一个念头,不管什么版本吧,能用就行了。然后我看到这个博客中的一句话:http://blog.sina.com.cn/s/blog_49c3e6050100uhfw.html
这个问题是可以忽略的!!!
内心的蛋疼已经无语言表,最后的运行显示图如下:
不知道这样算不算正确启动了,反正我已经心力憔悴开始怀疑自己要不要走上程序员这条路了.............

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值