所以下面是我的項目結構: 一個jar文件(名爲patch.jar)和一個資源文件夾;jar文件裏面的一個類讀取jar外的文件
所以在jar文件中有一個類(名爲patch.class);
在資源文件夾中有一個子文件夾(名爲腳本),並在子文件夾中有一個文件(名爲patch.file),我希望我的代碼可以讀取。
奇怪的是當我設置文件相對路徑,代碼無法讀取,但是如果我只是設置文件名沒有路徑,它的工作原理。
File a = new File("./resource/scripts/patch.file"); //not work
File a = new File("./patch.file"); //works
我真的很困惑,設置相對路徑應該這樣做嗎?
請記住,一個相對路徑是相對於程序的「當前目錄」,可*(取決於程序是如何調用)是*什麼。你不能認爲它是你程序的根目錄,所以這樣硬編碼的相對路徑是一個壞主意。 – Wyzard
@Wyzard謝謝,非常有幫助 – aken848