最佳答案
如果在运行时使用 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 文件的路径?
附注: 请从 不要对工作目录做任何假设调用 java
命令!