当前位置: 代码迷 >> J2SE >> java 怎的运行一个实例
  详细解决方案

java 怎的运行一个实例

热度:125   发布时间:2016-04-23 22:51:30.0
java 怎样运行一个实例
我现在做的java程序在系统中运行一次将会产生一个javaw的进程而现在我要解决的是,怎样让java程序只能运行一个实例
java swing

------解决方案--------------------
写错,应该这样

private static ServerSocket listenerSocket;

public static void main(String[] args) {
try {
// 监听2012端口,达到一台终端只运行一个应用程序的目的
listenerSocket = new ServerSocket(2012);
} catch (java.net.BindException e) {
System.exit(1);
} catch (Exception e) {
System.exit(1);
}
}

------解决方案--------------------
如果是要求程序运行只能有一个进程,打包的时候,打包工具应该可以设置的吧,或者自己用c写一个启动exe,启动的时候判断一下,如果进程已经存在,则退出。如果指的是某个类只能有一个实例,则使用单例模式。
------解决方案--------------------
exe4j有一个选项可以保证只允许系统运行一个实例:
Allow only a single running instance of the application
  相关解决方案