是什么导致了这一切?我编写了一个Java程序,它可以在我的Windows 7 PC上使用Java 6u33和Java 7u 67,但是在运行在Windows 7下的Java 7u67的同事的PC上,我得到了一个错误:
Exception in thread "main" java.lang.Error: java.io.IOException: Incorrect function
at sun.nio.ch.FileKey.create(Unknown Source)
at sun.nio.ch.SharedFileLockTable.<init>(Unknown Source)
at sun.nio.ch.FileLockTable.newSharedFileLockTable(Unknown Source)
at sun.nio.ch.FileChannelImpl.fileLockTable(Unknown Source)
at sun.nio.ch.FileChannelImpl.tryLock(Unknown Source)
at java.nio.channels.FileChannel.tryLock(Unknown Source)
我无法确定到底是什么导致了这个错误,以及如何修复它。
嗯。显然,这是Java包装的底层操作系统错误(https://bugs.openjdk.java.net/browse/JDK-8025619)。任何线索是什么导致Windows中的“不正确的函数”错误?
发布于 2014-08-19 20:53:02
呃。它实际上与Java无关,与Windows下的保留文件名有关。
我试图创建一个表单COMnn.LOCK
的文件,在我的PC上,我使用COM13.LOCK (Windows下的一个合法文件名),但在我的同事的PC上,它是COM5.LOCK,它显然是Windows下的非法文件名;任何带有COMn的文件名(其中n是任何1位数)和任何扩展名都是非法的。>:(
https://stackoverflow.com/questions/25390927
复制相似问题