免责声明:目前,由于缺少 Linux 开发/测试服务器,我目前无法自己测试。因此我在这里问这个问题。我最终将拥有一个 Linux 机器,但目前仅限于使用 Windows。
我正在设计一个将在 Windows 和 Linux 上的 Tomcat 7 中运行的 web 应用程序。
假设在两个系统上,WAR 分别部署在以下位置
/opt/Tomcat/webapps/MyApp
C:/opt/Tomcat/webapps/MyApp
Webapp 有一个 Servlet,它需要在以下位置处理来自 OS 文件系统的文件
/work/logs/<logfiles>
C:/work/logs/<logfiles>
在 Windows 上,我可以指定 C:/work/logs 并且 Servlet 知道选择这个绝对路径并且它工作正常。我怀疑是因为C:开头。我知道这一点,因为我已经对此进行了测试。
我真正的问题是...
在 Linux 上,在没有驱动器号的情况下,如果我要求它查看,/work/logs
它会尝试查看相对路径:
/opt/Tomcat/webapps/MyApp/work/logs
还是会/work/logs
按照我的意愿在文件系统()中查找?
我现在问这个是因为它最终会影响整体设计。