您的位置:首页 > 编程语言 > Java开发

java项目相对路径问题

2017-11-30 13:21 281 查看
1、背景
在做开发时,经常遇到这样的情形:
IDE、cmd、web容器,对于一个项目的主目录路径的获取方式总是不一样,而且跨os(如windows和linux)时更是如此,这样太影像编码了,因为总不能一个一个if
else吧 ~囧~。
那么有没有办法解决呢?

2、解决方案:看需求!
2.1、如果你是想拿到路径,那么  =>  没有
(除非仅限制在linux或mac上),因为windows的会在最前面带个/,变成 /D://XXX


2.2、如果你是想获取对应的资源(如InputStream形式),那么是有的。
就是使用public InputStream Class.getResourcesAsStream(String path)接口,直接以InputStream的形式读出来。这个跨os、跨各种环境,通用的。
spring内部读取配置文件就是这么用的,可参见XmlBeanDefinitionReader#loadBeanDefinitions(EncodedResource),

通过PathMatchingResourcePatternResolver#getResources(String)打断点进去。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 相对路径