JAVA获取运行程序的src路径

JavaPrj使用: System.getProperty("user.dir")+"\\src"或直接"\\src"

JavaWeb使用Thread.currentThread().getContextClassLoader().getResource("/").getPath()

获取src目录

JavaWeb

JavaProj

System.getProperty("user.dir")

D:\tools\MyEclipse2015

D:\tools\Workspaces\TestJava

Thread.currentThread()

.getContextClassLoader()

.getResource("/")

.getPath()

/D:/tools/Workspaces

/.metadata/.me_tcat7

/webapps/AhExam4SSM

/WEB-INF/classes/

java.lang.NullPointerException

2018-04-29补充:JavaWeb项目中:

String path = this.getServletContext().getRealPath("/WEB-INF/classes");
System.out.println("path = " + path);

String path2 = Thread.currentThread().getContextClassLoader().getResource("/").getPath();
System.out.println("path2 = " + path2);

运行结果:(path2中空格变成%)

path = C:\Users\AndyMi\Workspaces\MyEclipse 2015\.metadata\.me_tcat7\webapps\TestJavaWeb\WEB-INF\classes
path2 = /C:/Users/AndyMi/Workspaces/MyEclipse%202015/.metadata/.me_tcat7/webapps/TestJavaWeb/WEB-INF/classes/