提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
代码中如何获取打包后的jar包存放的位置?
要获取当前运行的 JAR 包所存放的位置,可以使用 ProtectionDomain 和 CodeSource 类。
代码:
java
import java.net.URL;
import java.security.CodeSource;
import java.security.ProtectionDomain;
public class Main {
public static void main(String[] args) {
// 获取当前类的保护域
ProtectionDomain protectionDomain = Main.class.getProtectionDomain();
// 获取代码源
CodeSource codeSource = protectionDomain.getCodeSource();
// 获取代码源的位置
URL location = codeSource.getLocation();
// 获取 JAR 包的路径
String jarPath = location.getPath();
System.out.println("JAR Path: " + jarPath);
}
}
注意:这种方法适用于独立的可执行 JAR 包。如果你的代码是作为依赖项运行在其他项目或容器中,可能会得到不同的结果。在这种情况下,获取 JAR 包位置的方法可能会有所不同。