类名.class.getClassLoader().getResource(“/”).getPath()获取的项目路径是项目打包后在target中的路径.
例1:
String classPath = Util.class.getClassLoader().getResource("/").getPath();
获取到的类路径是
/D:/workspaceGit/project-model/project-model-web/target/model-web/WEB-INF/classes/
例1中Util是公共的包中的类,引用或继承引用在project-model项目的模块project-model-web中,所以获取到的路径是上述路径classes包中。
例子2:
String classPath = Util.class.getClassLoader().getResource("../../").getPath();
获取到的路径是
/D:/workspaceGit/project-model/project-model-web/target/model-web/
其中”../../”指的是上上级目录。
例子3:
this.getClass().getResource(“”).getPath()
获取到的路径是
/D:/workspaceGit/project-model/project-model-web/target/model-web/WEB-INF/classes/com/model/modelA/controller/
一般做公用的工具方法,要适应引用包的所有项目,要用例1与例2.
资料项目中获取资源文件路径 方法有
1、xxx.class.getClassLoader().getResource(“”).getPath();
获取src资源文件编译后的路径(即classes路径)
2、xxx.class.getClassLoader().getResource(“文件”).getPath();
获取classes路径下”文件”的路径
3、xxx.class.getResource(“”).getPath(); 缺少类加载器,获取xxx类经编译后的xxx.class路径
4、this.getClass().getClassLoader().getResource(“”).getPath();