Spring Boot 应用程序被打包为一个fat jar文件。我正在Tomcat使用Spring Boot. 我没有更改application.propertiesfor中的默认位置spring.resources.static-locations。Angular 应用程序的生产版本添加在/static. server.servlet.context-path设置为app。server.port是8480。base href因为index.html是.
/static
- /assets
-- /images
---- logo.png
---- /flags
------ flag.png
-- /scss
- index.html
- *.js
- *.js.map
- *.ttf
- *.eot
- *.svc
- *.woff
- *.woff2
我可以加载界面并且 Angular 应用程序正在正确发送 REST 请求,但我无法加载任何图像资源。/assets/scss在开发工具中被正确识别,但不是/assets/images. 还@Configuration根据此视频添加了此内容。
@Configuration
public class StaticResourceConfigurator extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry
.addResourceHandler("/assets/images/**")
.setCachePeriod(0)
.addResourceLocations("classpath:/static/assets/images/");
}
}
对图像资源的请求被发送到localhost:8480/assets/images/logo.png它应该被发送到的时间localhost:8480/app/assets/images/logo.png