我收到以下异常
java.io.IOException: Bad file descriptor
at gnu.java.nio.channels.FileChannelImpl.size(libgcj.so.10)
at java.io.RandomAccessFile.length(libgcj.so.10)
at ServerSendFile.getAndSetDataFromFile(ServerSendFile.java:738)
at ServerSendFile.runOnce(ServerSendFile.java:613)
at ServerSendFile.startSendFile(ServerSendFile.java:212)
at Server.procMsgFromNetstorm(Server.java:583)
at Server.tcpRecv(Server.java:465)
at Server.run(Server.java:292)
这里我有Server.java
运行ServerSendFile
作为每个提交请求的线程Server.java
ServerSendFile
的目的是它将从文件
有很多代码,我只粘贴了它在第rafLogFile.length();
行引起的小快照
try
{
long fileSize = rafLogFile.length();
//if the file size may size is zero then, return to fetch the data next innterval
if(fileSize == 0)
{
return true;
}
}
catch(IOException eio)
{
cmonLog.stackTraceLog(className, "getAndSetDataFromFile", "", "", "Exception caught in retriving length of log file = " + lastFile.getAbsolutePath(), eio);
}
答案 0 :(得分:0)
可能是jdk / jre版本的问题。
只需检查代码是否已编译并运行相同的jdk / jre版本