![](/img/trans.png)
[英]System.out.println doesn't show text in console (IntelliJ)
[英]Java: System.out.println() should write to the console, but it doesn't
我正在嘗試編寫Java控制台應用程序,代碼很簡單:
public class ConsoleTest {
public static void main(String[] args) {
System.out.println("test");
}
}
如果我從Eclipse運行這個應用程序,那么我在Eclipse的“控制台”中看到“ test
”,但是如果我將我的應用程序導出為“ Runnable JAR文件 ”並從Windows XP cmd.exe
運行它,那么沒有任何內容回顯到控制台。
在安全方面,我試圖檢查System.console()
,它返回null
。
有什么不對?
你是如何在日食之外運行你的程序的?
你應該使用命令行
java -jar yourjar.jar
要么
java -cp yourjar.jar ConsoleTest
如果您偶爾使用javaw
則不會生成控制台輸出。 javaw
的STDOUT為null
。 可能這是當你點擊你的jar文件時會發生的事情。
您需要從命令行運行jar文件。
如果雙擊它,您將無法看到在后台運行的命令行操作。 Jar文件通常只在涉及GUI時雙擊才能運行。
要從命令提示符運行jar文件,只需執行以下操作:
java -jar ConsoleTest.jar
假設您已為java.exe設置環境變量,並且當前目錄具有jar文件。
如果這不起作用,則可能不是您的代碼的錯。 指向Main類的清單文件也可能設置錯誤。
嘗試從命令行將其編譯為一個類,然后運行它。 那樣有用嗎?
javac ConsoleTest.java
java ConsoleTest
有可能你的runnable jar文件沒有按預期工作,並且實際上並沒有運行你的ConsoleTest類。
就像Hovercraft Full Of Eels編寫的那樣,使用cmd.exe使用以下命令編譯.java文件:
javac ConsoleTest.java
然后這將創建一個.class文件,我們想用這個命令編譯它:
java ConsoleTest
然后應該顯示“測試”輸出。
您必須安裝java jdk並將包含文件java.exe的目錄的根目錄添加到系統的目錄中,您將在jdk的安裝指南中找到更多信息。
然后使用該命令在控制台中運行該文件
> java file.java
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.