需要获得我正在使用的Servlet的真实路径。 JAVA

时间:2017-06-11 21:08:11

标签: servlets

我需要获取我正在其中使用的servlet的路径。通过一些搜索,我找到了类似的东西:

System.out.println(getServletContext().getRealPath("/"));

结果是:

C:\Users\me\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\ProjectName\ServletName

我不知道“.metadata.plugins \ org.eclipse.wst.server.core \ tmp1 \ wtpwebapps”是什么意思,我只想获得“原创”项目的路径:

C:\Users\me\workspace\ProjectName\ServletName

有没有办法直接获得这条路径(没有先获得大路径,然后切断它的中间部分)?

2 个答案:

答案 0 :(得分:0)

您获得的结果是servlet .class 文件的位置。 Eclipse在调用函数{{}后,将您的应用程序部署在服务器应用程序文件夹 .metadata / .plugins /.../ wtpwebapps 中(因为您使用的是与真实Tomcat位置不同的临时文件夹) 1}},您的servlet已部署在服务器中,并且尚未从其原始位置执行。即使您更改了tomcat的目录,您也始终会获得已部署的servlet的位置,而不是 .java 文件。 read more about Server temporary location

答案 1 :(得分:0)

您也可以使用${pageContext.request.contextPath}。此命令指向项目的根文件夹。