当我启动eclipse时,它启动了一个Java实例,但是当我运行应用程序时,它再次启动另一个Java实例。为什么它没有在先前生成的实例上运行程序。
我开始日食之后
我在eclipse中运行任何程序后
如果有人知道,请帮助......
答案 0 :(得分:3)
每个正在运行的Java程序都需要自己的Java虚拟机实例。因此,如果程序的两个实例同时运行,则需要看到两个Java进程。
如果你"关闭"第二次运行之前的第一个程序,第一个Java进程仍然在运行,这只意味着你的程序实际上并没有结束。这很可能是由于您的代码中存在错误,例如您尚未确保关闭主GUI窗口会结束Java进程。
更一般地说,你已经导致一些长时间运行的线程启动并让它们继续运行(Swing的事件调度线程就是这样一个例子)。
答案 1 :(得分:0)
如果您正在为主窗口使用JFrame等swing组件,则必须启用让[X]关闭按钮退出应用程序的功能。这是通过以下方式完成的:
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);