关闭

servletcontext监听器的启动位置以及tomcat和eclipse的目录结构

356人阅读 评论(0) 收藏 举报

情景:

想在应用启动的时候就加载spring容器 在ServletContextListener.contextInitialized()中加载spring容器
ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml");
结果发现一直报"找不到文件的IO错误",于是就打印下当前路径 "D:\install\eclipse-jee-mars-1-win32-x86_64\eclipse" 结果居然跑到了eclipse的安装目录来了,不是工作目录也不是tomcat的目录,这就神奇了吧 然后我就直接用tomcat发布,不用eclipse了 结果当前路径在 "C:\Program Files\Apache Software Foundation\Tomcat 8.0_Tomcat\bin" 这就尴尬了,我的应用在webapps里面啊,怎么会跑到这里来了呢

原因

一、eclipse

在eclipse中,启动服务器是由eclipse.exe启动 servletcontext监听器的初始化是在启动服务器的过程就完成的,所以自然当前目录在"D:\install\eclipse-jee-mars-1-win32-x86_64\eclipse"

二、tomcat

在tomcat中,启动服务器是由startup.bat启动 所以当前目录就在"C:\Program Files\Apache Software Foundation\Tomcat 8.0_Tomcat\bin"

不同环境的web目录结构

凡是涉及到路径的,都会因为环境的不同而不同,window、linux、eclipse、tomcat各不相同

eclipse的目录结构

eclipse目录结构

tomcat的目录结构

tomcat目录结构

总结

特别要注意的是class文件的放置!!!eclipse中class放在/build/classes里面 在tomcat中class放在/WEB-INF/classess里面

查看原文:http://139.129.55.235/2016/05/30/servletcontext%e7%9b%91%e5%90%ac%e5%99%a8%e7%9a%84%e5%90%af%e5%8a%a8%e4%bd%8d%e7%bd%ae%e4%bb%a5%e5%8f%8atomcat%e5%92%8ceclipse%e7%9a%84%e7%9b%ae%e5%bd%95%e7%bb%93%e6%9e%84/
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:40489次
    • 积分:999
    • 等级:
    • 排名:千里之外
    • 原创:57篇
    • 转载:2篇
    • 译文:0篇
    • 评论:2条
    友情链接
    文章分类
    最新评论