在我的程序中,我正在创建一个带有文件名的文件类对象。在写完之后我将使用上面的文件对象创建一个FileOutputStream
对象。
File file = new File("mod.properties");
FileOutputStream fileOut = new FileOutputStream(file);
当它在tomcat服务器上运行时,它正在寻找'文件' temp文件夹中的对象。而不是堆。并不是每个tomcat服务器都会发生这种情况,但很少发生。
[无法从文件夹路径中获取模型 /opt/tomcat/temp/1501748741522-0][STACK][java.io.FileNotFoundException: mod.properties(没有这样的文件或目录)在 java.io.FileOutputStream.open0(Native Method)at java.io.FileOutputStream.open(FileOutputStream.java:270)at java.io.FileOutputStream。(FileOutputStream.java:213)at
的java.io.FileOutputStream。(FileOutputStream.java:162)
答案 0 :(得分:0)
来自java.io.File的javadoc: "绝对路径名是完整的,因为不需要其他信息来定位它表示的文件。相反,相对路径名必须根据从其他路径名获取的信息来解释。默认情况下,java.io包中的类始终解析当前用户目录的相对路径名。此目录由系统属性user.dir命名,通常是调用Java虚拟机的目录。"
您在构建File时设置了相对路径名,因此您可以在这里获得答案:这些实例具有不同的属性/设置。