欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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包所在的目录;