【发布时间】:2014-04-24 19:09:55
【问题描述】:
在特定服务器(Windows 2012 服务器 R2)上,我无法创建临时文件。每次尝试都会出现以下错误。
java.io.IOException: The system cannot find the path specified
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createTempFile(Unknown Source)
etc..
每次运行以下代码时都会发生错误:
InputStream inputStream = portalBean.createPDF( sessionID, foCode );
我尝试过的事情
即时更改了 java.io.tmpdir 变量。
System.setProperty("java.io.tmpdir", "C:\\");将
-Djava.io.tmpdir=c:\\temp添加到 webnetwork lax 文件的一个不受限制的位置。我尝试将 webNetwork 服务设置为以具有临时文件权限的指定用户身份运行,例如管理员。
确保我有可用磁盘空间并清理了 c:\windows\temp 文件夹。
确保将 tmp 环境变量设置为其默认值。
我还尝试从使用
Run As Administrator选项打开的命令提示符运行服务。
IOException 仍然存在。我有另一台服务器运行相同的代码没有问题(Windows Server 2012)。
还有其他人对我可以尝试解决此问题的其他方法有任何想法吗?或者关于如何更彻底地调试问题以了解正在发生的事情的任何提示?
【问题讨论】:
-
这是 Java 6 还是 Java 7?
-
@fge Java 7 我相信。
-
2012服务器中,tmp文件位于哪个文件夹?
-
@AndreaTaroni86 默认
C:\Windows\Temp -
一件事,你确定你的代码真的使用了临时目录吗?
标签: java file file-io io inputstream