我想制作一个只能打开一次的RCP应用程序。
如果再次打开它,则它会(最好是通过提供的参数传递)在原始窗口上。
我的用例涉及同一台计算机上的多个并发用户(具有他们自己的用户帐户),因此我认为打开端口的路线不可行。
我正在使用RCP4-我在网上看到的很多现有内容都是RCP3或更旧的版本。
答案 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
}
}