2016-03-11 55 views
0

鉴于一个Java应用程序的与GUI的源代码Java:如何从控制台分离?

我编译它 从命令行

然后调用它,我想它运行GUI 从它被调用的控制台分离,所以我可以继续在那里打字。

如何修改源代码以实现此目的?

这种行为的例子 - 尽管不是Java程序 - 将是ReKonq。

注意:我想实现这个独立于操作系统,即我不想改变我调用它的方式,但修改我的public static von main(String[] args)方法。

+1

可能重复[如何以后台运行进程并永不死亡](http://stackoverflow.com/questions/4797050/how-to-run-process-as-background-and-never-die) – sinclair

+0

@sinclair不,这不是关于操作系统工具(如'nohup'),而是关于在Java源代码中实现这个与操作系统无关的工具。 – arney

+3

这不是内置于Java运行时,因此您需要从启动进程(“shell”/“cmd”)执行它,或者如果您想从Java本身执行操作系统,请与操作系统交谈。 –

回答

1

你可以在命令行用&在该行的末尾启动它在后台运行它:

java MyApplication & 

如果它已经启动,您可以按Ctrl + Z,然后键入BG得到相同的结果。

(假设你在Linux上)

+1

'&'做了什么? –

0

我不认为你可以用纯Java实现这一点,因为最终的Java只是另一个进程的操作系统你的。由于您希望避免操作系统特定的细节,因此您可以考虑使用Java服务包装器。一些Apache软件也使用这个,我知道的是this service wrapper