一、使用當前路徑java
執行java命令前先cd進入到java命令所在目錄,程序中可取系統屬性user.dir或經過new File(".")取路徑shell
二、使用相對路徑windows
System.getenv("JAVA_HOME")/bin/java.exe.net
三、增長環境變量unix
執行java前,在bat或shell裏增長一個環境變量,unix下記得exportcode
//windows: set PROC_PATH=D:\jdk1.6.0_18\bin\javaw.exe進程
//unix: export PROC_PATH=D:\jdk1.6.0_18\bin\javaw.exeget
System.out.println(System.getenv("PROC_PATH"));string
四、sigar根據進程ID取進程路徑class
/*1)、取當前進程ID*/ //9420@XMCX pid@計算機名 String pid = ManagementFactory.getRuntimeMXBean().getName(); //@以前爲進程ID pid = pid.substring(0, pid.indexOf('@')); /*2)、根據進程ID取進程命令路徑 D:\jdk1.6.0_18\bin\javaw.exe*/ Sigar sigar = new Sigar();//http://www.oschina.net/p/sigar System.out.println(sigar.getProcExe(pid).getName()); System.out.println(sigar.getProcArgs(pid)[0]);