eclipse导出web项目而引起获取class路径不是期待值!
2015-12-06 00:00
344 查看
摘要: eclipse导出web项目,而引起XX.class.getClassLoader().getResource("").getPath()获取的路径值:.../.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps.而不是我们想要的本地的项目路径。
解决方案:
在eclipse中删除当前项目,然后clean。
然后就可以修改tomcat的配置ServerLocation.如果不这样做的话,ServerLocation的选项是灰色的不能选择。
勾选第二个选项:User Tomcat installation .
更改Deploy path:webapps.之前的是wtpwebapps.
这样导出的web应用,获取classpath就是tomcat的路径了。
应用场景:
上传图片等资源文件的时候,通过获取获取classpath路径,把资源文件存在应用目录下。这样以后无论调整项目路径或者tomcat路径,都不需要调整应用里面的代码。
另外的方法:
对于要起到上述的效果。另外一种方法:
把资源文件存到项目之外的一个路径,同时做个入口方法读取,线上部署的时候,配置nginx去读取这个目录,就不需要经过入口方法了。
当然你也可以根据环境来自动选择存放路径。
解决方案:
在eclipse中删除当前项目,然后clean。
然后就可以修改tomcat的配置ServerLocation.如果不这样做的话,ServerLocation的选项是灰色的不能选择。
勾选第二个选项:User Tomcat installation .
更改Deploy path:webapps.之前的是wtpwebapps.
这样导出的web应用,获取classpath就是tomcat的路径了。
应用场景:
上传图片等资源文件的时候,通过获取获取classpath路径,把资源文件存在应用目录下。这样以后无论调整项目路径或者tomcat路径,都不需要调整应用里面的代码。
另外的方法:
对于要起到上述的效果。另外一种方法:
把资源文件存到项目之外的一个路径,同时做个入口方法读取,线上部署的时候,配置nginx去读取这个目录,就不需要经过入口方法了。
当然你也可以根据环境来自动选择存放路径。
相关文章推荐
- spring Bean实例生命周期行为
- 理解CacheLine与写出更好的JAVA
- java实现线性顺序表
- java实现线性单链表
- java中toString()方法
- java学习第五天
- java学习第六天
- java中 this 和 super的区别
- 强制关闭myeclipse出现的问题
- HDU 5593 ZYB's Tree(树形DP 好题(java))
- java注册用户信息保存到txt中。
- Java Annotation 及几个常用开源项目注解原理简析
- Java锁(一)之内存模型
- Struts2如何封装请求参数
- Struts1 标签库 说明
- 在Java中生成专业的公文文档
- Java安全中的“大坑”,跨平台真“浮云”
- 漂亮的Java Swing界面NimROD
- 纯Java文档阅读器(word、pdf等)
- Java回炉之常用类