我正在从Java jar可执行文件写入文本文件。 jar生成正确的文件,但文件的权限设置为root,因此我的其他Javascript无法读取该文件。当我尝试通过ajax读取文件时,它返回“Permission Denied”。在Java中创建文件时如何解决问题?我目前正在运行Java 1.6。
当我在eclipse中运行应用程序时,我没有遇到此问题。一旦我将它移植到jar权限就改为root访问权限。
我正在运行jar
exec('java -jar writeToFile.jar');
写入文件是标准的
public void writeContents(String fp,String contents){
try{
BufferedWriter write = new BufferedWriter(new FileWriter(fp));
write.write(contents);
write.close();
}catch(Exception e){
System.out.println("Failed to write to file " + fp + " error: " + e.toString());
e.printStackTrace();
}
}
写入文件工作正常,它创建文件正确的目录和所需的数据,只有在eclipse中运行它和通过jar运行它之间的区别是文件权限。 jar将文件设置为root。