File dir = new File(path);
boolean rc1 = dir.setExecutable(true, false);
boolean rc2 = dir.setReadable(true, false);
boolean rc3 = dir.setWritable(true, false);
if (!rc1 || !rc2 || !rc3){
logger.warn("One of the permissions set returned false: rc1="+rc1+" rc2="+rc2+" rc3="+rc3 + " [for dir '"+dir+"']");
}
在Ubuntu上所有3個調用返回false。 在我的Windows上,只有第三次調用setWritable纔會返回false。
目標是創建文件/目錄,以便用戶(tomcat)和組將能夠讀取/寫入。
但在Ubuntu上創建的文件沒有權限寫組。
做你以root用戶身份運行程序? –
您是否以擁有該目錄的用戶身份運行該程序?用戶是Windows下的管理員嗎? –
@Akhil - 不,它在Tomcat中運行,因此創建爲'tomcat'用戶。 – urir