ServletContext接口提供了几个获取项目路径的方法
- 其中getRealPath是可以获取容器在服务器中的绝对位置
public String getRealPath(String path);
问题:
最近在项目中遇到一个问题,依赖的第三方jar中有一个Filter在其init()调用了filterConfig.getServletContext().getRealPath("/");
由于自己的项目是springboot jar内置tomcat,所以该路径一致都是临时的
解决办法
后来只能改成war形式,部署打外部tomcat中,才会获取正确的项目路径(绝对路径war包解压后的项目位置)
如下: