2011-11-10 23 views
4

最近我一直在使用Eclipse構建兩個工具。我正在打印一些消息到控制檯(System.out.print)。 但是,我現在爲每個工具構建了一個.jar文件,我想在不同的機器上運行(不安裝eclipse)。運行這個.jar不會提供我正在打印的消息。如何從正在運行的jar文件打印消息?

從正在運行的.jar文件將消息打印到屏幕上的最佳方式是什麼? 例如,如何打印:

System.out.print("Results succesfully saved!"); 

我GOOGLE了不少,但找不到任何結果。

回答

6

System.out.print("Results succesfully saved!");對於.jar程序來說工作得很好。但是,它要求用戶在終端中運行它,以便他能夠看到打印到標準輸出的東西。

如果這不是你想要的,那麼也許你想看看JOptionPane,它有幾個靜態方法來以圖形方式顯示這些消息。

這張截圖

enter image description here

是例如通過這個片段製作:

import javax.swing.JOptionPane; 

class Test { 
    public static void main(String[] args) { 
     JOptionPane.showMessageDialog(null, "Results succesfully saved!"); 
    } 
} 
+0

謝謝,JOptionPane看起來不錯。 但是,奇怪的是,我確實嘗試從命令行(Windows 7)運行它,並沒有將我的任何打印語句打印到命令行。 – Maza89

+0

究竟是如何運行它?甚至不能看到一個簡單的hello世界程序的輸出?這聽起來非常奇怪...... – aioobe

+0

啊,我發現我在控制檯中做了什麼錯誤..而不是運行'java -jar xx.jar',我運行了'xx.jar'。使用'java -jar'運行我確實得到了預期的打印輸出。擺動替代品看起來不錯,所以我仍在考慮改用JOptionPanes。感謝那! – Maza89

0

我不知道這是如何工作的Linux,但對於Windows,你必須進入你的控制面板,打開java設置,進入高級。並選擇Java控制檯 - > show console。

當然更好的是使用日誌框架,如Log4j而不是System.out.println。這樣你可以打印文件和控制檯。

1

你從控制檯執行jar嗎?如果不是,試試吧。

0

當你更「直接」執行你的程序時,打印到屏幕上聽起來會很好。但是,您可能需要考慮使用日誌記錄框架,因爲當您要配置輸出時,它爲您提供了更大的靈活性。