创建2个Java App实例?

时间:2014-05-25 23:08:49

标签: java networking instance

我正在构建一个Java网络应用程序,并且希望能够为没有2台计算机的用户演示网络功能(通过localhost)。

我想知道是否有办法,可能通过再次调用main方法,创建另一个Java应用程序实例。这不仅仅是JFrame的另一个实例,因为网络功能无法正常运行。

示例场景:用户点击“演示模式”,然后应用创建第二个实例,然后用户可以通过localhost测试网络连接。

有没有办法实现这个目标?

3 个答案:

答案 0 :(得分:2)

即使没有两台计算机,您至少应该运行两次应用程序(在同一台计算机上),而不是使用使用相同JVM的特殊“演示模式”。

您可能需要做的就是添加一些配置,这样它们就不会互相干扰(例如配置服务器套接字端口或本地磁盘文件位置)。

另一个(只有稍微多一点,一旦你掌握了它)选项是使用虚拟机(如VirtualBox)假冒两台实际的计算机之间有网络连接。

答案 1 :(得分:1)

杰克,

如果您无法通过同时运行程序的两个实例来完成此操作,是否可以尝试在计算机上运行虚拟机?尝试按原样在桌面上运行程序,然后在具有Java的虚拟机中再次运行它。

如果只是简单的程序,将JVM堆叠在另一个虚拟机之上应该不是什么大问题。但是,如果它是一个资源匮乏的计划,我不会指望它的性能。

编辑:我更喜欢VirtualBox https://www.virtualbox.org/

答案 2 :(得分:1)

您可以创建一个与main完全相同的方法,并调用该方法两次。或者您可以使用在单独的JVM上运行相同的程序。