2014-01-16 4 views
-1

나는 JDK 1.6.0.25와 윈도우 7 64 비트 OS와 I를 사용하고 java.After에서 독립 실행 형 응용 프로그램을 설치하는 경우 응용 프로그램을 열면 빌드 디렉토리에 로그 폴더와 applogs.log 파일이 만들어집니다. 내가 가지고있는 로그를 생성 file.To 내가 "C의 \ 프로그램 파일 \" 또는 "C의 \ 프로그램 파일 (X86) \" 디렉토리에 설치하고 내가 응용 프로그램을 열 경우이 로그 폴더를 생성하지 않으며 applogs.log
자바의 "io api"를 사용했다."C의 프로그램 파일 프로그램 응용 "또는에서 로그 파일을 만들 수 없습니다 "C의 프로그램 파일 (X86) 프로그램 응용 "

나는이 문제에 관한 많은 검색 및 c\program files\ 또는 c\program files (X86)\

졸 1에 기록 할 수있는 권한이 없다는 것을 발견했다 :를 변경하여 권한을 변경하는 폴더의 보안 옵션을 선택합니다.
sol 2 : java 7을 사용하고 setPosixFilePermissions() 메소드를 사용하여 권한을 변경하십시오.

몇 가지 종속성이 있기 때문에 위에 두 가지 솔루션을 사용하고 싶지 않습니다. 나는 하나 더 응용 프로그램을 가지고 있으며 log4j api을 사용하여 로깅 기능을 가지고 있습니다. 위의 조건에서 로그 파일을 생성하는 것으로 나타났습니다. 위의 솔루션 이외의 몇 가지 해결책이나 생성 방법은 log4j api입니다.

답변

0

그런 식으로 사용자의 홈 디렉토리를 사용해야합니다. 가장 간단한 방법은 자바 시스템 속성 응답 벤자민에 대한 user.home

 
System.getProperty("user.home") 

How to get local application data folder in Java?

+0

고맙습니다을 읽는 것입니다. 하지만 사용자 홈 디렉토리 또는 다른 장소에 로그 파일을 생성하는 데 아무런 문제가 없습니다. 필자의 요구 사항은 c \ program files 또는 c \ programs 파일 (X86)에 설치하는 것입니다. 그리고 응용 프로그램을 시작한 후에는 설치된 디렉토리에 로그 파일을 만들어야합니다. –