我在 Eclipse IDE 中有一个 Java 项目。如果我创建新的 File 对象。喜欢File file = new File("someFile.txt")
。它期望 someFile.txt 出现在项目主页中。而且我可以把它放在某个目录中,config/someFile.txt
并且可以在新的 File 构造函数中使用它。这里一切都好。
当我制作这个项目的 JAR 并将它放在 WEB-INF/lib 中时。然后new File("someFile.txt")
代码需要 TOMCAT_HOME/bin 中的文件。我用file.getAbsolutePath();
. 这是我无法控制的。我的问题是为什么在 java web 应用程序中 new File 期望在 bin 目录中。为什么不把项目放在家里。这样我就可以轻松导航到我的配置目录。即使../../
导航也不起作用。因为它们被附加TOMCAT_HOME/bin/../../someFile.txt
并导致文件不存在。
我希望我已经很好地解释了我的问题。