eclipse tomcat启动成功但是访问报404问题

博客(coder的自我修养)原文链接:http://www.imcoder.fun/archives/1589810802141

eclipse项目部署成功,tomcat也启动成功,但是访问项目报404。

这说明项目没有成功部署到tomcat上,解决办法如下。

点击工程,右键--> Properties,选择 Deployment Assembly

 

点击右侧的 Add 选择Folder(文件夹),然后点击Next

 

选择WebContent

然后点击Finish

​​

​​这样WebContent就出现在Source里了,说明web文件已经成功部署,点击Apply and Close 重新启动tomcat即可。

​​

可以看到日志正常打印,tomcat启动成功,项目部署成功。

前台访问正常。

微信公众号:coder的自我修养

Eclipse启动 Tomcat 服务器后,若服务器本身可以正常访问但静态资源出现 404 错误,通常与项目部署方式、资源路径配置或 Tomcat 的上下文设置有关。以下是一些常见原因及对应的解决方案: ### 静态资源 404 的可能原因及解决方法 1. **项目未正确部署到 `webapps` 目录** 在 Eclipse 中使用 Tomcat 插件时,默认情况下会将项目部署到工作空间下的临时目录(如 `.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/`),而非 Tomcat 原生的 `webapps` 文件夹。如果某些配置依赖于原生路径,可能会导致静态资源无法加载。 - 解决方法:可在 Eclipse 的 Server 配置中修改部署路径为实际 Tomcat 的 `webapps` 目录,确保静态资源能被正确识别和访问。 2. **URL 路径配置错误** 如果访问的 URL 没有正确匹配项目的上下文路径(Context Path),则可能出现 404。例如,项目名为 `MyWebApp`,应通过 `http://localhost:8080/MyWebApp/resource.html` 访问资源。 - 可检查 `server.xml` 或 `context.xml` 文件中的 `<Context>` 标签是否设置了正确的 `path` 属性[^1]。 3. **Tomcat 默认不启用默认 Servlet 来处理静态资源** 在某些项目结构中,如果使用了 Spring MVC 等框架,其 `DispatcherServlet` 可能拦截了所有请求,导致静态资源(如 CSS、JS、图片)无法直接访问。 - 解决方法:在 Spring 配置文件中添加对静态资源的放行规则: ```xml <mvc:resources mapping="/resources/**" location="/resources/" /> ``` 并确保 `web.xml` 中的 `<url-pattern>` 设置为 `/` 而非 `/*`,以避免拦截静态资源请求[^2]。 4. **Eclipse 清理缓存并重新部署** Eclipse 的 WTP 插件有时会保留旧的部署信息,导致资源更新未能及时生效。 - 可尝试清理 Tomcat 缓存,在 Eclipse 中右键点击 Server → Clean,随后重启服务器并重新发布项目。 5. **文件权限或路径大小写问题** Linux 系统上的 Tomcat 对文件路径大小写敏感,若在 Windows 上开发而部署到 Linux 环境,可能会因路径大小写不一致导致静态资源找不到。 - 检查静态资源的实际路径是否与请求路径完全匹配,包括大小写。 6. **Tomcat 版本兼容性问题** 若使用的 Tomcat 版本与项目要求的 Java EE 版本不兼容,也可能导致部分资源无法解析。 - 可尝试更换 Tomcat 版本(如从 9.x 升级到 10.x)并确认是否仍存在问题。 --- ### 示例:Spring Boot 项目中配置静态资源访问 ```java @Configuration @EnableWebMvc public class WebConfig implements WebMvcConfigurer { @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/static/**") .addResourceLocations("classpath:/static/"); } } ``` --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值