user.dir 在 Eclipse 中使用 tomcat 网络应用程序时不正确

user.dir is incorrect while using tomcat web app in eclipse

我有一个配置项目,很少有项目在使用它。 我的所有项目都在同一个工作空间下。

workingspace/configuration

workingspace/webapp1

workingspace/mongoDB

workingspace/model

mongoDB 和模型项目正在使用配置 jar 项目并且能够使用相对路径读取 xml 文件 ../configuration/conf/....xml

使用

 System.out.println("Working Directory = " +
                          System.getProperty("user.dir"));

在它们里面,我得到了正确的路径(工作区)

在尝试从 Web 应用程序 servlet 执行此操作时,我得到了 eclipse.exe 的文件夹,这导致了一些问题。

如何修复 Web 应用程序的 user.dir 默认路径?

在运行时间,例如当您不在 eclipse 内部 运行ning 时,您可能也想在定义的目录中工作——我建议显式配置特定目录。当您 运行 在应用程序服务器中时,您可能 运行 作为一个没有主目录可写的非特权用户(当帐户以最小权限正确管理时)。这不同于临时启动的应用程序。事实上,您可能无法假设您的应用程序服务器 运行 与独立应用程序的用户相同。

另一种选择是利用系统的临时目录 - 如果这些确实是临时文件。这可能被认为是可写的,或者如果它没有意义就投诉。