如何获得项目的路径

piwv200
2013-10-12 · TA获得超过3584个赞
知道小有建树答主
回答量:948
采纳率:0%
帮助的人:2236万
展开全部
但是这样获取到得好像是E:\myeclispeWorkbase\samplev\WebRoot\WEB-INF\classes E:\apache-tomcat-6.0.30\webapps\samplev\WEB-INF 所以就得到你这个效果 顶上去System.getProperty("user.dir")这个可以获得项目的路劲。 Tomcat目录\webapps\WEB-INF\classes request.getServletContext().getRealPath("\\src"); Java codepublicvoid doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String p =this.getServletContext().getRealPath("index.jsp"); System.out.println(p); }输出的是:D:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\testWeb\index.jsp System.getProperty("") 我想得到相对路径,也就是项目发布后的路径,我是在java类里面,不在action中所以得不到request对象! 你是自己建了WEB项目,又在这个项目上右键点Run出来的结果吧 这样的路径部署到服务器上 又对不对呢?好像不是部署后的路径,因为我部署后的路径是 所有WEB项目都是类似你那种路径的,WEB项目在应用服务器例如TOMCAT下的默认部署路径像这样 而假设你在这个项目中,用MyEclise直接Run单个测试类的话,出现的Class.getResource()路径就类似 MyEclipse工作目录\项目名\webRoot\WEB-INF\classes 如果是web项目可以使用 而假设你建立的是Java Project的话,部署路径就是项目路径 假设你的程序已导出为Jar或者classes包,并且部署在D:\test下,在不修改默认工作目录,并且在D:\test下执行程序的话,Class.getResource()的路径就是D:\test 所以,你得搞请楚几个概念,1.项目开发位置 2.部署位置 3.执行路径 4.工作目录 Java code/** * 获得工程的classpath根目录 * @return String */publicstatic String getClasspath() { try { return Class.forName("随便一个类").getResource("/").getPath(); } catch (Exception e) { e.printStackTrace(); } return""; }这个是在myeclipse里面运行得到的路径 E:\myeclispeWorkbase\samplev\WebRoot\WEB-INF\classes 如果你打包放到 tomcat里面运行,就会得到这个路径 E:\apache-tomcat-6.0.30\webapps\samplev\WEB-INF\classes 所以你完全可以使用这种方式得到路径。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式