Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何检查eclipse工作区是否已锁定_Java_Eclipse - Fatal编程技术网

Java 如何检查eclipse工作区是否已锁定

Java 如何检查eclipse工作区是否已锁定,java,eclipse,Java,Eclipse,我有几个eclipse实例同时运行,我想检查其中一个实例的工作区当前是否正在使用中。 因此,我只想了解工作区的路径C:\Users\XY\workspace 我看到.metadata文件夹中有一个.lock文件。但是它的大小一直是0kb。那么如何检查呢 提前谢谢 锁定代码org.eclipse.osgi.internal.location.Locker\u JavaNio使用: RandomAccessFile raFile = new RandomAccessFile(lockFile, "r

我有几个eclipse实例同时运行,我想检查其中一个实例的工作区当前是否正在使用中。 因此,我只想了解工作区的路径
C:\Users\XY\workspace

我看到
.metadata
文件夹中有一个
.lock
文件。但是它的大小一直是
0kb
。那么如何检查呢


提前谢谢

锁定代码
org.eclipse.osgi.internal.location.Locker\u JavaNio
使用:

RandomAccessFile raFile = new RandomAccessFile(lockFile, "rw");

FileLock fileLock = raFile.getChannel().tryLock(0, 1, false);
锁定
.lock
文件

如果文件已锁定,
tryLock
将引发异常

解锁是:

fileLock.release();

raFile.close();

如果
.lock
文件存在,那么它将被锁定。不,如果我关闭eclipse,那么
.lock
文件仍然存在感谢您提供的有用提示。然而,这仍然不能回答这个问题。也许可以编写一个Java程序,用这些信息进行检查。但是,难道没有一种简单的方法可以从命令行/shell脚本测试它吗?为什么Eclipse不在退出时简单地删除.lock文件?@Jörg命令行在什么操作系统上?我不是Eclipse设计师,所以我不能说它为什么不删除锁。我在MacOS上,但我需要提供一个来自独立于平台的bash脚本的解决方案。它当然可以使用${OS_TYPE},但不需要启动JVM。然而,已经有了一个针对MacOS的解决方案将是非常好的。