在做开发测试的时候, 有时候会同时 用一个tomcat 运行多个项目 这时候 就奇怪了, 发现有一个项目 没有启动起来, 报错也是 看不出来。。。 百度了了一下 :
在启动出现错误的工程web.xml增加如下语句便可
<context-param>
<param-name>webAppRootKey</param-name>
<param-value> app.root </param-value> // tomcat 里面 多个项目,不能相同的这个值
</context-param>
配置这个是为了 获取 项目部署的物理路径的。
http://theron19.iteye.com/blog/678000 地址。。 在WEB -INF/web .xml 中 , 创建一个webAppRootKey的param, 指定一个值(默认为webapp.root)作为键值, 然后通过Listener , 或者Filter , 或者Servlet 执行String webAppRootKey = getServletContext().getRealPath("/"); 并将webAppRootKey对应的webapp.root 分别作为Key , Value写到System Properties系统属性中。之后在程序中通过System.getProperty("webapp.root")来获得WebRoot的物理路径