try {
randomAccessFile = new RandomAccessFile(file, "rw");
lock = randomAccessFile.getChannel().tryLock();
} catch (IOException e) {
e.printStackTrace();
}
出现如下异常:
Caused by: java.io.IOException: No locks available
at sun.nio.ch.FileChannelImpl.lock0(Native Method)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:871)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:962)
at org.apache.jackrabbit.core.util.RepositoryLock.tryLock(RepositoryLock.java:153)
... 141 more
没有可用的锁,原因是磁盘不支持lock锁,或者磁盘nfslock服务没有开启。
执行 df -T -h 命令,查看文件所在目录挂载的类型是否是NFS。
若是”NFS“,一般文件所在的目录挂载的别的服务器上的磁盘!启动NFS所在服务器的nfslock服务,具体linux命令自己百度。
通过命令 ps -ef|grep nfsd 或者 service nfslock status 查看nfslock服务启动状态