【发布时间】:2017-07-27 10:07:16
【问题描述】:
我有一个 Spring Boot 应用程序,我尝试将其部署到 .war 以从 Tomcat 服务器运行它。
在此之前,我正在部署到一个可执行的 .jar 并且一切正常。
在应用程序中,我需要读取一个 .json 文件并读取一个目录,它们的位置是相对的。部署到 .jar 时,我会将文件放在与 .jar 相同的文件夹中。我将访问它:./branchMap.json。该目录也将与 jar 位于同一文件夹中,我将访问它:./patches。
现在,当我部署到 .war 时,我将应用程序放在 Tomcat 的 webapps 中,并将 json 文件和文件夹也放在 webapps 中。当我运行应用程序时,它能够读取 json 文件,但无法读取 /patches 文件夹。
为什么会这样?我已经看到 Tomcat 尝试将 /patches 文件夹作为应用程序加载,在 tomcat 管理器中列出。这对尝试读取该文件夹的应用程序有何影响?部署到战争的应用访问相对路径的方式有什么不同吗?
【问题讨论】:
标签: java spring tomcat spring-boot path