我想在普通 Java 类中找到我的 Web 应用程序的上下文路径。如果找到,我可以/Rod1/thermalMap.exe
在需要的任何地方指定这样的路径。
我知道,如何servlet
使用以下代码找到
getServletContext().getRealPath("");
我的 webApps 文件夹按以下方式。
您可以获取到您的webApp/WEB-INF/classes
目录的绝对路径,如下所示:
URL resource = getClass().getResource("/");
String path = resource.getPath();
这将返回一个绝对路径,如下所示:
/C:/SERVERS/x/y/x/yourApp/WEB-INF/classes
从这里你可以得到yourApp
目录的路径:
path = path.replace("WEB-INF/classes/", "");
您可以使用它来指定路径,例如/Rod1/thermalMap.exe
, 通过附加到 this path
。
你试过这个吗?
String path = new File(".").getCanonicalPath();
您需要注册一个
javax.servlet.ServletContextListener
在你的 web.xml 中像这样:
<listener>
<listener-class>com.my.Servlet</listener-class>
</listener>
从中,您可以获得可以调用 getContextPath() 的 ServletContext。