0
我具有利用當前jar文件的路徑中的代碼。但有一件奇怪的事情:我有兩個jar文件(兩個不同的項目)。在項目A:當我運行並打印到控制檯時,我看到它正確打印。 但是,在項目B:它只是打印當前jar文件的驅動器,而不是直到文件夾。獲得Jar文件的路徑:不同的結果爲不同的項目
例如:既a.jar文件和B.jar在文件夾d:\溫度:B的
結果:將/D:/temp/
結果:./
(之前具有點!!!)
這裏是我的代碼:(。)
String path = getClass().getProtectionDomain().getCodeSource().getLocation().getPath();
String decodedPath = URLDecoder.decode(path, "UTF-8");
String RealPath = decodedPath.substring(0, decodedPath.lastIndexOf("/") + 1);
System.out.println("path: " + path);
System.out.println("decodePath: "+decodedPath);
System.out.println("Real path not include file name: "+RealPath);
您可以發佈您用來啓動這兩個項目在命令行中表達? – dash1e 2012-04-13 19:15:32
*「我有一個代碼稱取當前jar文件的路徑。「*爲什麼? – 2012-04-13 20:21:43
正常工作對我來說,你要是跑不過它作爲一個.class我沒有得到預期的行爲爲貴‘你順便說一句使用什麼控制檯/終端的真實路徑’? – 2012-04-13 20:54:14