일부 디렉토리 및 파일을 생성해야하며 권한 0600이 있어야합니다. 012B실행할 때 NetBeans 디버그 : 일부를 저장하려고하면 디렉토리를 만든 후 파일 거기에 "권한이 거부되었습니다"메시지와 함께 IOException
얻을 동일한 디렉터리와 파일을 동시에 동일한 응용 프로그램과 동일한 사용자가 만들 수 있으므로 0600 (소유자 읽기/쓰기) 작동합니다.
Jar 파일을 실행할 때 chmod가 전혀 작동하지 않습니다!Java IOException : 소유자 권한으로 실행 중일 때 리눅스에서 권한이 거부되었습니다.
if(!Dest.exists()){
boolean res=dirs.mkdirs();
if(res){
Runtime.getRuntime().exec("chmod -R 600 '"+dirs.getAbsolutePath()+"'");
}
}
File Destination=new File(Dest, source.getName());
documentManager.copyFile(source, Destination);
과 CopyFile 수는 다음과 같습니다 : 내 코드는
public static void copyFile(File sourceFile, File destFile) throws FileNotFoundException,IOException {
if(!destFile.exists()) {
destFile.createNewFile();
}
FileChannel source = null;
FileChannel destination = null;
try {
source = new FileInputStream(sourceFile).getChannel();
destination = new FileOutputStream(destFile).getChannel();
destination.transferFrom(source, 0, source.size());
}
finally {
if(source != null) {
source.close();
}
if(destination != null) {
Runtime.getRuntime().exec("chmod 600 '"+destFile.getAbsolutePath()+"'");
destination.close();
}
}
}
문제가 무엇입니까?
감사합니다.
스택 추적을 게시하십시오. 아마 너 자신을 분석 할거야. 어디에서 예외가 발생합니까? – AlexR