java获取当前jar包所在目录
程序员文章站
2022-05-01 13:00:59
...
原本获取工程目录使用方法System.getProperty("user.dir")
;
但是打完包放在linux机器上跑的时候发现无法正确获取到该jar包所在目录,导致无法运行;
网上查阅后修改为如下方法:
public String getPath()
{
String path = this.getClass().getProtectionDomain().getCodeSource().getLocation().getPath();
if(System.getProperty("os.name").contains("dows"))
{
path = path.substring(1,path.length());
}
if(path.contains("jar"))
{
path = path.substring(0,path.lastIndexOf("."));
return path.substring(0,path.lastIndexOf("/"));
}
return path.replace("target/classes/", "");
}
这样打成jar包后也可以正常获取到jar包所在的目录;
上一篇: Java如何获取当前的jar包路径