我有一个spring boot应用程序,我计划保留UI和后端api控制器。 根据文件,
server.servlet.contextPath=/myapp
server.servlet.path=/api
以上属性,我可以访问我的api url说http://localhost:8080/myapp/api/version
。
但是,' index.html'保留在src/main/resources/static
下的其他网络资源现在只能在http://localhost:8080/myapp/api/
下使用。
我尝试了以下内容,
private static final String[] CLASSPATH_RESOURCE_LOCATIONS = {
"classpath:/META-INF/resources/", "classpath:/resources/",
"classpath:/static/", "classpath:/public/" };
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**")
.addResourceLocations(CLASSPATH_RESOURCE_LOCATIONS);
}
但它似乎不起作用,因为我相信dispatcherServlet
也处理静态文件(?)。
如何覆盖此行为?