创建目录时出现java.security错误(Linux)

时间:2012-05-18 21:09:47

标签: java linux file-io directory

我有这样的代码:

return (new File(pathA + File.separator + pathB + File.separator)).mkdir();

我相信它曾经有用,但它现在不起作用。该应用程序仅在Linux上运行,我们已经使用Mint 9,Ubuntu 10.04,Kubuntu 12.04等进行了测试。它不会创建目标目录。

该路径位于具有777权限的目录中。

堆栈跟踪不是很有帮助。因为跟踪显示了对java.security方法的几次调用,所以我认为这是一个权限问题。但实际的错误消息根本没有用(可能是因为代码中的异常处理需要改进)。

在Linux上用Java创建目录的最佳方法是什么?

2 个答案:

答案 0 :(得分:3)

  • path + File.separator提取到变量。
  • 将其打印到控制台
  • 在终端中启动shell并使用运行该应用程序的同一用户帐户运行此命令 mkdir <INSERT THE PATH TO THE DIR THAT YOUR APP IS TRYING TO CREATE HERE>

这应该是你问题的根本原因。

如果这不能使答案显而易见,请在问题中添加所有其他证据

答案 1 :(得分:2)

问题是在路径中我创建了多个级别的目录。解决方案是:

return (new File(pathA + File.separator + pathB + File.separator)).mkdirs();

注意mkdirs()上的“s”。