2011-03-23 57 views
0

我目前正在为我的团队开发多个项目管理应用程序,并将这些应用程序分发为JAR,现在可以。但是我被要求制定一个中央应用程序来启动它们。Java:中央应用程序

基本上是一个小应用程序,为我已经制作的每个应用程序提供一个按钮,当您单击该按钮时,它会启动相应的应用程序。除了一点,我设法做了所有事情。 我将我的JAR包含在构建路径中,然后通过创建Main类的实例来启动它们。这实际上是有效的,但是当我想关闭一个窗口时,它关闭了所有的窗口......

任何人都有这个想法吗?

谢谢

回答

0

找到了!我在(扩大JFrame),每个应用程序的主类有这样的:

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

我把它改为:

this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 

现在这个工作。

感谢您的帮助

1

正在启动使用另一个Java应用程序?如果是这样,窗口关闭事件可能会触发System.exit();你可以发布一些代码吗?

还可以考虑使用Webstart并提供指向网页中应用程序的链接。 因此,用户可以打开该页面,Webstart可以下载并启动应用程序。

+0

重点是有一个应用程序启动器,而不是一个网页。 – 3rgo 2011-03-23 13:37:53

+0

问题是这个应用程序启动器是否真的有必要。如果这是一个很难的要求,那么确定。查找'System.exit()'(或者捕获窗口关闭事件)或者尝试Russ的方法。 – Thomas 2011-03-23 13:40:46

3

您需要通过启动新进程在不同的VM中运行新的应用程序。像这样:

new ProcessBuilder("java", "-jar", "EXECUTABLE.JAR").start() 

如果Java在你的路径。

+0

这样,我可以启动位于我的构建路径中的JAR吗? – 3rgo 2011-03-23 13:38:26

+0

我不确定你的构建路径是什么意思。你是否将应用程序的罐子嵌入发射器的罐子中? – 2011-03-23 13:58:30

+0

是的,为了简化分配过程 – 3rgo 2011-03-24 11:10:23