无法在“c \ program files \ appName \”或“c \ program files(X86)\ appName \”中创建日志文件

时间:2014-01-16 11:37:11

标签: java log4j

我正在使用 JDK 1.6.0.25 Windows 7 64位操作系统,我在java中有一个独立的应用程序。如果我打开应用程序,它会创建日志文件夹和build目录中的applogs.log文件。
当我在“c \ program files \”“c \ program files(X86)\”目录中安装它时,如果我打开应用程序,它不会创建日志文件夹和applogs.log file.To创建日志我简单地使用了java的“io api”。

我已就此问题进行了大量搜索,发现没有权限在c\program files\c\program files (X86)\

中撰写

sol 1:通过更改文件夹的安全选项来更改权限。
sol 2:,使用java 7并使用方法setPosixFilePermissions()来更改权限。

我不想在两个解决方案之上使用,因为存在一些依赖性。 我有一个应用程序,并使用log4j api具有日志记录功能。我发现它在上述条件下创建了日志文件。 除了上述解决方案或log4j api创建的解决方案之外,请给我一些解决方案。

1 个答案:

答案 0 :(得分:0)

你应该使用用户的主目录这样的东西。最简单的方法是读取Java System属性user.home

System.getProperty("user.home")

How to get local application data folder in Java?