1

我傾向於使用NetBeans開發很多控制檯應用程序。其中許多應用程序使用命令行中的參數,在測試和調試時我經常更改參數,所以每次我想要更改參數時都必須在NB中拉出一個對話框,這是令人沮喪的。此外,其中很多參數都是文件名,我喜歡使用tab-completion,這在對話框中不可用。如何從命令行運行增量編譯的NetBeans應用程序?

我現在要求的是每次編譯一個jar文件並在一個單獨的終端窗口中運行應用程序,因爲我可以在改變命令行參數的同時快速運行應用程序,並使用tab完成符合我心中的內容。但是,這種方案很痛苦,因爲我不能再使用增量編譯,因爲增量編譯的文件不會顯示在類路徑中。所以我每次都被迫製作一個罐子,這很慢。

我的問題是我怎樣才能擁有兩全其美?我希望能夠在對代碼進行快速更改(增量編譯)後快速運行我的應用程序,但也需要快速更改命令行參數。

我想過的是試圖改變我的類路徑,所以它包括增量編譯文件的位置,但是在閱讀增量編譯的NB文檔後,我不確定這是否足夠。

回答

1

遞增編譯器在目錄build/classes中留下類。鑑於這個例子:

package cli; 
import java.util.Arrays; 
public class Hello { 
    public static void main(String[] args) { 
     String s = "Hello, world! -> "; 
     System.out.println(s + Arrays.toString(args)); 
    } 
} 

我保存任何更改源代碼之後,即得到這些命令行的結果,而不明確的重新編譯:

 
$ java -cp build/classes cli.Hello 
Hello, world! -> [] 
$ java -cp build/classes cli.Hello 123 
Hello, world! -> [123] 
$ java -cp build/classes cli.Hello 123 456 
Hello, world! -> [123, 456] 
相關問題