You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在BlueJ的Java方法中自动关闭控制台?

解决BlueJ中仅关闭控制台窗口的问题

方案1:结合Scanner等待输入+System.exit(0)(推荐通用方案)

BlueJ中System.exit(0)会终止当前运行的程序实例,同时关闭对应的控制台窗口——之前没生效可能是代码逻辑的问题。正确的写法是先等待用户回车输入,再调用退出命令:

import java.util.Scanner;

public class YourClass {
    public static void main(String[] args) {
        System.out.println("操作完成,按回车关闭控制台");
        Scanner input = new Scanner(System.in);
        input.nextLine(); // 阻塞等待回车
        input.close();
        System.exit(0); // 终止程序,触发BlueJ关闭控制台
    }
}

方案2:调用系统命令(仅Windows可用)

如果不想终止整个程序(不推荐,BlueJ的控制台和程序进程绑定较紧密),可以针对Windows系统调用命令关闭控制台窗口,但跨平台性差:

import java.util.Scanner;

public class YourClass {
    public static void main(String[] args) {
        System.out.println("按回车关闭控制台");
        Scanner input = new Scanner(System.in);
        input.nextLine();
        input.close();
        
        try {
            // Windows下执行命令关闭当前控制台
            Runtime.getRuntime().exec("cmd /c exit");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

方案3:调整BlueJ内置设置

打开BlueJ的Preferences(偏好设置),找到Terminal选项卡,勾选**"Close terminal when program exits"**。之后只要程序正常终止(比如执行完main方法或调用System.exit(0)),控制台窗口会自动关闭,无需额外代码。

内容的提问来源于stack exchange,提问作者Burguel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 19:19:53