news 2026/5/1 8:05:47

解决JSP框架的程序无法找到前端页面的问题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
解决JSP框架的程序无法找到前端页面的问题

$MODULE_WORKING_DIR$

IntelliJ IDEA 中的一个内置变量(System Property),它代表当前模块(Module)的工作目录(Working Directory)


✅ 为什么加了$MODULE_WORKING_DIR$就能正常使用了?

🌟 核心原因:

Spring Boot 内嵌 Tomcat 在加载webapp目录时,需要正确的“工作目录”来定位静态资源、JSP 文件等。如果工作目录设置错误,会导致 JSP 找不到 → 404。

$MODULE_WORKING_DIR$正好指向了你的项目根目录,确保了:

  • src/main/webapp能被正确识别
  • JSP 文件路径解析正确
  • 静态资源(CSS/JS)也能正常访问

🔍 详细解释

1.什么是Working directory

在运行 Java 应用时,JVM 会有一个“当前工作目录”,用于:

  • 解析相对路径(如./webapp
  • 加载配置文件(如application.properties
  • 查找资源(如 JSP、HTML)

如果这个目录设置错了(比如设成了target/classes),那么 Spring Boot 的内嵌容器就无法找到webapp下的 JSP 文件。


2.默认值是什么?

如果你不设置Working directory,IDEA 默认使用:

project root

但有些情况下(尤其是多模块项目),IDEA 可能会自动设为某个子目录或target目录,导致路径错乱。


3.$MODULE_WORKING_DIR$是什么?

这是一个IDEA 内置的变量,它的值是:

当前模块(Module)的根目录,即pom.xml所在的目录。

例如:

C:\workspace\ciecc-gm-greenmall

✅ 这正是你期望的:让 Spring Boot 从项目根目录开始查找src/main/webapp


4.为什么之前不行?

可能的原因包括:

  • 工作目录被设置成了target/classesbuild等编译输出目录
  • 多模块项目中,IDEA 自动选择了错误的模块作为启动上下文
  • 没有显式指定工作目录,导致 JVM 使用了不正确的默认路径

5.$MODULE_WORKING_DIR$的作用

当你设置了:

Working directory: $MODULE_WORKING_DIR$

IDEA 会在运行时将实际路径替换为:

C:\your-project-root

这样:

  • src/main/webapp就在working dir/src/main/webapp
  • Spring Boot 启动时能正确扫描并部署 JSP 文件
  • 访问/hello时,能匹配到WEB-INF/jsp/hello.jsp

✅ 实际效果对比

表格

设置结果
Working directory: (空)可能默认为target/classes→ JSP 找不到 → 404
Working directory: .相对路径,可能不准确
Working directory: $MODULE_WORKING_DIR$✅ 指向项目根目录 → JSP 正常加载

💡 补充建议

1.推荐始终使用$MODULE_WORKING_DIR$

无论是否用 JSP,都建议设置:

Working directory: $MODULE_WORKING_DIR$

避免路径问题。

2.配合其他配置

  • 确保pom.xml<packaging>war</packaging>
  • 主类继承SpringBootServletInitializer
  • 使用Tomcat Server配置而非直接 run main(更稳定)

📌 总结

$MODULE_WORKING_DIR$是一个“魔法变量”,它告诉 Spring Boot 从哪里开始查找资源(如 JSP)。
加上它后,工作目录被正确设置为项目根目录,从而解决了 JSP 404 的问题。

这是 IntelliJ IDEA 提供的一种强大机制,让你无需手动输入路径,就能保证运行环境的一致性。


如果你还遇到类似问题(如静态资源找不到),也可以检查这个字段是否正确设置。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 6:26:12

零基础如何学网络安全?超详细攻略,带你从入门到精通

一、学习建议 1.了解基础概念&#xff1a; 开始之前&#xff0c;了解网络安全的基本概念和术语是很重要的。你可以查找网络安全入门教程或在线课程&#xff0c;了解网络安全领域的基本概念&#xff0c;如黑客、漏洞、攻击类型等。 2.网络基础知识&#xff1a; 学习计算机网…

作者头像 李华
网站建设 2026/4/30 10:01:19

【2026实测】快降重降 AI 率:格式零损伤,学术改写高效又规范

摘要笔者以工科《计算机技术应用下的电气自动化控制系统设计分析》论文为测试对象&#xff0c;针对工科论文包含表格、公式、数据图表的特点&#xff0c;使用快降重 Pro 版进行降 AI 率处理&#xff0c;实测其在维普、PaperPass 等工科常用检测平台的效果。结果显示&#xff0c…

作者头像 李华
网站建设 2026/4/29 8:37:09

2026年 IT 转行就业,为何首选网络安全?五大核心优势深度解析

2025年IT转行/就业为什么首先要选网络安全&#xff1f; 记得曾经有人说过这样一个俗语&#xff1a;三百六十行&#xff0c;行行转IT。或许听到这个话的时候会觉得是一句玩笑话&#xff0c;但是浏览到网络上一些关于就业的文章&#xff0c;就能够明白这句话的真正意义所在。随着…

作者头像 李华
网站建设 2026/5/1 3:12:12

零基础怎么学网络安全?一文超详细详解,带你从入门到精通

一、学习建议 1.了解基础概念&#xff1a; 开始之前&#xff0c;了解网络安全的基本概念和术语是很重要的。你可以查找网络安全入门教程或在线课程&#xff0c;了解网络安全领域的基本概念&#xff0c;如黑客、漏洞、攻击类型等。 2.网络基础知识&#xff1a; 学习计算机网…

作者头像 李华
网站建设 2026/4/16 19:49:10

暗数据基础、挑战与管理策略

什么是暗数据&#xff1f;基础与挑战 暗数据和非结构化数据指的是同一事物。区别在于术语的指向对象不同。非结构化数据往往是面向工程师的术语。它指的是数据的结构特性&#xff0c;向工程师传达他们需要如何处理数据以使其可用。非结构化数据是未经提炼的数据&#xff0c;需…

作者头像 李华