不管是在Eclipse下导入项目还是自己新建立的项目,运行后种种异常.主要有:
2013-11-7 0:49:57 org.apache.catalina.core.StandardContext listenerStop 严重: Exception sending context destroyed event to listener instance of class org.springframework.web.context.ContextLoaderListener java.lang.NoClassDefFoundError: org/springframework/web/context/ContextCleanupListener at org.springframework.web.context.ContextLoaderListener.contextDestroyed(ContextLoaderListener.java:80) at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4980) at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5626) at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232) at org.apache.catalina.core.StandardContext.reload(StandardContext.java:3947) at org.apache.catalina.loader.WebappLoader.backgroundProcess(WebappLoader.java:426) at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1345) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1530) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1540) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1540) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1519) at java.lang.Thread.run(Unknown Source)
最终还是跑起来了,总结如下:
- 要将所有用到的JAR文件放在WEB-INF/lib文件夹下面
- 原始的项目代码里缺少一个jstl-1.2.jar,需要将这个补上
- 原项目的Web根目录设置是WebRoot,Eclipse下默认新建的是WebContent,可以通过修改.mymetadata文件的如下部分为WebContent:
<attributes> <attribute name="webrootdir" value="WebContent" /> </attributes>
最后感叹一下这个helloworld居然用了将近30个JAR包,截图纪念一下: