maven中classpath路径(转)
前几天看见一个大神总结classpath文章,觉得特别有用。所以,特此转载(http://my.oschina.net/GivingOnenessDestiny/blog/603505)
各种path获取到的路径的区别
Main.class.getResource(""); 得到的是当前class所在的路径
Main.class.getResourceAsStream(""); 是从当前路径查找资源资源
Main.class.getClassLoader.getResource("");得到的是当前类classloader加载类的起始位置
Main.class.getClassLoader.getResourceAsStream("");从classpath的起始位置查找资源
但是
Main.class.getResource("/"); 表示从classpath目录下找
也就是说 Main.class.getResource("/"); 等价于 Main.class.getClassLoader.getResource("");
但是 Main.class.getClassLoader.getResourceAsStream("/"); 返回的是null
关于Servlet 资源路径
ServletContext.getRealPath("/") 返回的是 war 包展开后的从系统根目录到war展开地址的根路径,比如windows 就是 file:///d/path/to/war/
也就是上面做了两个动作, 先从 war 根目录找到资源, 然后返回资源完整路径
同样的 ServletContext.getResource("/") 返回的的是从war 根目录查找到的资源,只不过返回的是 URL ServletContext.getResourceAsStream("/") 返回的是和上面一样的 InputStream
但是 ServletContext.getResource("") 返回的是相对于URL的路径,相当于从当前URL根路径查找资源 ServletContext.getResourceAsStream("") 和上面一样,只不过返回InputStream
关于maven工程下springmvc资源路径配置
Java 源代码文件资源在Maven工程中的默认路径是: src/main/java,这个路径就是放置你的Java源代码文件。默认的路径是无需在Maven的pom.xml配置文件中指定的
资源文件的缺省路径为src/main/resources,这样Maven在打包成war文件的时候,会将src/main/resources的资源文件复制到class目录。
因此对于Spring mvc项目,servlet的配置文件springmvc-context.xml缺省会放置在 src/main/resources/springmvc-context.xml。
对应的的web.xml指定的<param-value>classpath:springmvc-context.xml</param-value> 中,servlet的配置文件springmvc-context.xml 需要从 class目录下查找。
maven中classpath路径(转)的更多相关文章
- 《Java项目中classpath路径详解》
项目里用到了classpath路径来引用文件,那么classpath指的是哪里呢 我首先把上面的applicationContext.xml文件放在了src目录下发现可以. 那么classpath到底 ...
- Java项目中classpath路径
1.src不是classpath, WEB-INF/classes.lib.resources才是classpath,WEB-INF/是资源目录, 客户端不能直接访问. 2.WEB-INF/class ...
- java项目中classpath路径到底指的是哪里?
本文转自:http://blog.csdn.net/javaloveiphone/article/details/51994268 1.src不是classpath, WEB-INF/classes和 ...
- java web中 classpath路径 详解
在使用ssh等框架开发web程序时配置文件(xml和properties)存放的路径一般为src下,当部署程序时则必须存在于classes路径下,具体如下 src不是classpath, WEB-IN ...
- 转:关于JAVA项目中CLASSPATH路径详解
在dos下编译Java程序,就要用到classpath这个概念,尤其是在没有设置环境变量的时候.classpath就是存放.class等编译后文件的路径. javac:如果当前你要编译的Java文件中 ...
- 关于JAVA项目中CLASSPATH路径详解
写的不错:http://blog.csdn.net/cheney521/article/details/8672066 以下内容源于复制,把自己觉得不错的东西收集起来: 在dos下编译java程序,就 ...
- 在maven中classpath notfund
- java代码中获取classpath路径
Javaweb工程中,有时候需要自己手动的去读取classpath下面的配置文件,这里总结一点读取classpath路径的方法,分享一下. 方法一: String path = Test.class. ...
- myeclipse及Eclipse中.classpath、.project、.settings、.mymetadata(myeclipse特有)介绍
引言 今天在创建java项目的时候遇到了很多的错误,在解决的过程中遇到了一些根本不知道什么作用的文件,然后按照网上的一些做法可以将问题解决,但是这也说明我们在学习的时候很多基础和细节的地方是我们薄弱的 ...
随机推荐
- [筆記] Ubuntu Linux 使用 apt-get 指令移除軟體並清理遺留的垃圾
This is come from http://blog.lyhdev.com/2013/01/ubuntu-linux-apt-get.html 在 Ubuntu 下移除某個軟體套件,使用的 ...
- webpack构建vue项目(再谈配置)
webpack配置起来确实麻烦,这不,之前用刚配好了vue1+的版本,结果在(部分)安卓机上测试,发现存在开启热加载(dev-server)的情况下不能识别vue语法的问题,试了很多方法,都没能很好的 ...
- mybatis判断传入list大小
<if test="tenantIds.size() > 0"> AND A.PROC_TARGET_ID IN <foreach collection=& ...
- opencv3.0.1 中的SurfFeaturesFinderGpu类的问题.
最近需要实现一下图像配准的功能, 参考了一下opencv中的实现,发现几个问题, SurfFeaturesFinderGpu在找特征点的过程中会抛出异常,改了一下代码,可以运行了. void Surf ...
- Python NaN
NaN, Not a Number, 非数. 它即不是无穷大, 也不是无穷小, 而是python/numpy/... 觉得无法计算时返回的一个符号(自己的推测, 未考证(TODO)). import ...
- 用iMindMap如何提高我们绩效
iMindMap模板中的向导功能可以帮助用户快速的建立起对应类型的思维导图,帮助初学者用户更快的掌握iMindMap.本文就介绍了iMindMap模板向导中的绩效辅导思维导图. 我们打开iMindMa ...
- thinkcmf无法使用config.html中的配置量
在模版中引入 <tc_include file=":config" />
- java swing 双人五子棋源代码
import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.Toolkit; impo ...
- BZOJ2730: [HNOI2012]矿场搭建
传送门 图的连通性相关的必和割点割边之类的有关. 题目要求对于一个无向图,任意一点被删除后,所有点都和某些指定点是联通的. 这道题比较简单的做法就是求出来所有的块.对于一个块,如果块里有两个及两个以上 ...
- Request —— 让 Node.js http请求变得超简单
github地址: https://github.com/request/request 安装: npm install request --save-dev