小编典典

如何获取正在运行的 JAR 文件的路径?

all

想要改进这篇文章? 提供这个问题的详细答案,包括引文和解释为什么你的答案是正确的。没有足够细节的答案可能会被编辑或删除。

我的代码在一个 JAR 文件中运行,比如 foo.jar ,我需要在代码中知道正在运行的 foo.jar 位于哪个文件夹中。

因此,如果 foo.jar 在 中C:\FOO\,无论我当前的工作目录是什么,我都想获取该路径。


阅读 100

收藏
2022-03-06

共1个答案

小编典典

return new File(MyClass.class.getProtectionDomain().getCodeSource().getLocation()
    .toURI()).getPath();

将“MyClass”替换为您的班级名称。

显然,如果您的类是从非文件位置加载的,这会做一些奇怪的事情。

2022-03-06