防止Eclipse RCP应用程序的多个实例

时间:2019-06-17 12:43:37

标签: java eclipse-rcp

我想制作一个只能打开一次的RCP应用程序。

如果再次打开它,则它会(最好是通过提供的参数传递)在原始窗口上。

我的用例涉及同一台计算机上的多个并发用户(具有他们自己的用户帐户),因此我认为打开端口的路线不可行。

我正在使用RCP4-我在网上看到的很多现有内容都是RCP3或更旧的版本。

1 个答案:

答案 0 :(得分:1)

这里有一个图书馆:http://www.sauronsoftware.it/projects/junique/

Junique库可用于阻止用户同时运行同一Java应用程序的更多实例。

此处的用法示例:

public static void main(String[] args) {
    String appId = "myapplicationid";
    boolean alreadyRunning;
    try {
        JUnique.acquireLock(appId);
        alreadyRunning = false;
    } catch (AlreadyLockedException e) {
        alreadyRunning = true;
    }
    if (!alreadyRunning) {
        // Start sequence here
    }
}