2012-07-03 30 views
0

我寫了一個java程序,其中不同的類在這個過程中生成大量文件(比如說txt文件),然後讀取文件並對它們進行操作。我已經將該項目作爲一個JAR文件,我可以從命令運行它,因爲JAR位於同一個目錄中。 但是,我想在遠程服務器上的PATHs不一樣的地方運行這個JAR文件,因此它會產生錯誤,因爲在我的項目中它應該從/ Programs/Folder /中讀取一個文件,而在服務器這不會發生,因爲沒有/程序/文件夾...目錄。我是否必須根據新位置更改我的程序中的所有路徑我想放置我的罐子還是有其他方法? 我將不勝感激您的幫助。 最好的祝願在便攜式JAR中處理路徑

+0

爲什麼不通過參數傳遞路徑來讀取? –

+1

考慮也使用相對路徑。 – Wug

+0

你使用相對路徑還是絕對路徑? –

回答

0

我更喜歡的是我使用相對路徑,然後使用classloader.try讀取相對路徑它。

+0

感謝您的回答。但請你舉個例子。我怕我不明白,即使使用file.getAbsolutePath()。例如我的代碼文件位於/Programs/Folder1/folder2/..java,其中生成,寫入和讀取的文件位於/Programs/Folder1/Folder3/..txt中,我需要將整個項目移動到另一個服務器文件夾名稱是非常不同的 – Ramin

1

我想最好的方法是將目錄名稱作爲參數傳遞給java命令行。

讀它從參數ARGS主

1

這個簡單的,最好的解決辦法是改變所有的路徑中的文件項目的內部是相對路徑。你也可以簡單的將目錄中你想要的文件保存到String args[]作爲參數