静态资源未部署到 tomcat-docbase 文件夹 - (IntelliJ 2018 / Spring Boot 2 / Embedded Tomcat)
Posted
技术标签:
【中文标题】静态资源未部署到 tomcat-docbase 文件夹 - (IntelliJ 2018 / Spring Boot 2 / Embedded Tomcat)【英文标题】:static resources not deploying to tomcat-docbase folder - (IntelliJ 2018 / Spring Boot 2 / Embedded Tomcat) 【发布时间】:2021-01-16 13:19:08 【问题描述】:我一直在将旧的 Spring 4.x 应用程序转换为在 Spring Boot 2.x 上运行。此应用程序包含存储在 WAR 的“/WEB-INF/tiles”目录中的 JSP。
当我在本地运行应用程序(使用 IntelliJ 2018.3)时,服务器启动,但是当我尝试点击本地登录页面(“/devlogin”)时,我得到一个 404 未找到。在我的调试堆栈中,我设法找到了这个打印输出:
DEBUG o.a.j.s.JspServlet - JspEngine --> /WEB-INF/tiles/devlogin.jsp +[] #[]
DEBUG o.a.j.s.JspServlet - ServletPath: /WEB-INF/tiles/devlogin.jsp +[] #[]
DEBUG o.a.j.s.JspServlet - PathInfo: null +[] #[]
DEBUG o.a.j.s.JspServlet - RealPath: C:\Users\LBlack\AppData\Local\Temp\7\tomcat-docbase.8622225261320704348.8080\WEB-INF\tiles\devlogin.jsp +[] #[]
当我转到“RealPath”时,我发现\tomcat-docbase.#\
文件夹是空的,所以我手动复制粘贴到我的/WEB-INF/
文件夹中并重新加载浏览器,它就可以工作了!
现在我的问题是,如何让 IntelliJ 或 Tomcat 自动将 WEB-INF 部署到该位置?除了 Spring Boot 配置设置中允许的内容之外,我没有使用任何直接配置的 tomcat。有什么我可以添加到application.yaml
,或者这是一个 IntelliJ 运行设置?
谢谢。
【问题讨论】:
【参考方案1】:随着这些事情的进行,我在放弃(第一次)并发布问题后大约半小时找到了答案......
在 IntelliJ 中:
Run > Edit Configurations
设置环境>工作目录:到$MODULE_WORKING_DIR$
重启服务器。
【讨论】:
以上是关于静态资源未部署到 tomcat-docbase 文件夹 - (IntelliJ 2018 / Spring Boot 2 / Embedded Tomcat)的主要内容,如果未能解决你的问题,请参考以下文章
github如何托管页面部署静态资源部署vue静态资源的步骤和遇到的问题
github如何托管页面部署静态资源部署vue静态资源的步骤和遇到的问题