Tmp在Windows 2008服务上的java服务问题

时间:2010-04-01 05:46:08

标签: java windows service tmp

我对Windows 2008服务器有一个相当讨厌的问题。我们有一个使用本地服务用户作为服务运行的java应用程序。问题是该用户无权读取/写入指定的java tmp目录(由系统指定)。这意味着每次应用程序尝试创建tmp文件时都会抛出IOException。

有没有办法让一个需要访问tmp目录的java应用程序作为服务运行,而不需要:

  • 专门为追求创建新用户
  • 指定一个新的tmp目录(您必须自己清理)
  • 2 个答案:

    答案 0 :(得分:0)

    是否有理由不能授予'NT AUTHORITY \ LocalService'帐户写入Java默认临时目录的权限?

    答案 1 :(得分:0)

    来自http://www.rgagnon.com/javadetails/java-0484.html

    用于保存临时文件的目录的位置由属性java.io.tmpdir定义 可以使用用于启动JVM的命令行更改默认值:

    java -Djava.io.tmpdir=C:\mydir  myClass
    

    或者,在Windows上,您可以将环境变量TMP设置为其他值。