【发布时间】:2012-07-29 16:12:36
【问题描述】:
如果使用java 命令执行,是否有任何方法可以在运行时从此类的代码中确定已执行类的当前文件系统位置?
例如以下类:
public class MyClass{
public static void main(String[] args){\
new MyClass().doStuff();
}
private void doStufF(){
String path = ... // what to do here?!
System.out.println("Path of class being invoked: " + path);
}
}
有什么方法可以在刚刚被调用的 MyClass.class 文件的文件系统中获取并打印正确的路径?
同样,如果我从 java -jar 命令调用 jar 文件,有没有办法从该 jar 内的类中获取 jar 文件的路径?
P.S.:请不要对调用java 命令的工作目录做出任何假设!
【问题讨论】: