2011-11-26 35 views

回答

5

批處理文件應包含以下行:

java MyProgram param1 param2... 

,就是這樣。啓動時,程序可以使用掃描儀提示用戶輸入參數,請參閱example以獲得幫助。

+2

好方法。它有助於解決在3個不同主要平臺上處理複雜啓動腳本的麻煩。 –

5

我同意以前的答案,讓您的java程序請求輸入更有意義,而不是嘗試在批處理程序中執行它。

你不說什麼操作系統(s)你想運行這個,這將有所不同的批處理文件或腳本文件。

其他會影響系統運行的環境以及「默認目錄」是否顯着。

要調用java運行時,系統必須將'java'識別爲程序名。在Windows和Unix上(因此,我認爲,在Mac上),這是通過一個'路徑'變量完成的。路徑是一個「系統變量」,可用於命令行處理器,列出系統將在其中搜索命令的目錄。對於所有系統用戶能夠在命令行上使用「java」,路徑將需要全局設置,並且腳本不能這樣做;你必須找出如何在腳本之外設置它。或者,您的腳本可以從系統上的絕對位置調用java,但當然不同的計算機可能具有不同的值。要求在給定系統上爲腳本運行正確的路徑可能是最常見的答案,但您應該意識到問題。

大多數系統都有一個正在運行的程序的「默認目錄」的概念。如果你的java程序打開文件「MyData.txt」,那麼java運行時將在默認目錄中查找這個文件;如果它打開「.. \ MyData.txt」,它將在兄弟目錄中查找Windows系統上的默認值(注意反斜槓)等。它可以打開絕對路徑上的文件,儘管這些文件通常是系統特定的。所以希望你的程序要麼只在一種系統上運行,要麼以一般的方式處理文件,但如果你剛開始編寫一個腳本來運行你的程序,你應該知道這個問題。沒有什麼比一個運行良好的程序更令人沮喪,因爲它運行良好,但卻拒絕在任何其他環境中運行,特別是如果您沒有意識到這些潛在的缺陷。

你也不會說這個程序是否主要是一個UI程序(一個具有點擊界面的程序);您還應該意識到有辦法打包這樣的程序,以便它可以在系統上顯示爲可以通過鼠標點擊運行的圖標。