Spring+Vaadin应用中JPG图片无法显示的问题求助
解决Vaadin中JPG图片无法显示的问题
针对你遇到的PNG正常显示、JPG无法加载的问题,按以下步骤排查:
检查资源目录拼写:你提到的路径是
src/main/resources/META-INF/resouces/images,这里resouces少了一个字母r,正确路径应为src/main/resources/META-INF/resources/images。目录拼写错误会导致Tomcat无法识别静态资源,这是最常见的坑。验证文件大小写一致性:Tomcat在Linux/macOS环境下区分文件名大小写,确保代码中
"images/IMG_1797.JPG"和实际文件的文件名(包括扩展名)完全一致,比如不要出现代码写.JPG但实际文件是.jpg的情况。测试JPG文件本身是否损坏:用系统图片浏览器打开该JPG,确认文件未损坏;也可以替换一张已知正常的JPG到目标目录,测试是否能显示,排除文件本身的问题。
直接访问图片URL验证资源映射:启动应用后,在浏览器地址栏输入类似
http://localhost:8080/images/IMG_1797.JPG(根据你的应用端口调整),如果返回404,说明资源未被正确加载;如果能正常打开图片,再检查Vaadin的Image组件代码是否有遗漏。清理缓存:重启Tomcat服务器,同时清空浏览器缓存(或使用无痕模式访问页面),避免旧缓存导致的资源加载异常。
确认静态资源配置:如果上述步骤无效,可在
application.properties中添加静态资源配置,确保覆盖默认规则:spring.web.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/
内容的提问来源于stack exchange,提问作者Michal J
相关产品推荐
相关产品推荐

