以隐身模式启动java应用程序

时间:2013-01-18 09:57:14

标签: java user-interface

根据命令行参数或虚拟机参数,我希望我的应用程序以隐藏模式启动。它在两种情况下都做同样的事情,除了在隐形模式下它根本不显示任何东西。

我可以使用JFrame.setVisible(false)使主程序窗口不可见。但是,我必须找到代码中的每个位置,例如打开一个警告消息弹出窗口等(有很多这些!)。

有更通用的方法吗?可能是无头模式(当然会抛出HeadlessExceptions,这不是我想要的)。

谢谢!

3 个答案:

答案 0 :(得分:2)

您的应用程序架构是什么样的?如果它干净利落,则创建一个不执行任何操作的新View层。

如果它被纠结在一起,最好的选择是解开它,然后创建一个什么都不做的新视图层。

答案 1 :(得分:0)

这样做。

public static void main(String[] args){
    boolean gui = true;
    for (String s : args){
        if (s.equals("--nogui")){
            // Do not create GUI
            gui = false;
            break;
        }
    }
    if (gui){
        // Create the gui
    }
}

答案 2 :(得分:0)

如果您的表示层与业务逻辑紧密结合,则必须检查所有表单和其他可见类。你应该解耦你的应用程序,而不是像调用一个方法一样容易。

在其他情况下......你会有一堆if else if