java獲取當前jar包所在目錄

原本獲取工程目錄使用方法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包所在的目錄;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章