1 File f = new File(WebPath.class.getResource("/").getPath());
2 String path = f.getParentFile().getParent();

第一行获取到的是classpath的路径如:file:/E:/Workspace_idea/chicken/target/test-classes/     此处是用junit跑的

第二行获取到 E:\Workspace_idea\chicken 正确的项目路径

Test.class.getResource("/");//定位到classpath路径下
Test.class.getClassLoader().getResource("");//与上面等价,定位到classpath路径下

=============================================================================================================================================================================================================

附,关于
getResource的解析

class.getResource()的用法

  1. //取得classes顶级目录下的/xxx/yyy.txt文件   
  2. System.out.println(Test.class.getResource("/xxx/yyy.txt"));   
  3. //取得本class的上路径   
  4. System.out.println(Test.class.getResource(Test.class.getSimpleName() + ".class"));          
[Java] view plain copy
 
  1. //取得classes顶级目录下的/xxx/yyy.txt文件  
  2. System.out.println(Test.class.getResource("/xxx/yyy.txt"));  
  3. //取得本class的上路径  
  4. System.out.println(Test.class.getResource(Test.class.getSimpleName() + ".class"));          



结果: 
file:/home/duanyong/workspace/test/bin/WEB-INF/classes/xxx/yyy.txt 
file:/home/duanyong/workspace/test/bin/WEB-INF/classes/cn/duanyong/test/Test.class

相关文章: