Groovy Spring启动-覆盖webjar中的索引页
在我的项目中,我使用了swagger ui库,它在类路径的根目录中有index.html文件。这样,当我点击根url(如Groovy Spring启动-覆盖webjar中的索引页,groovy,spring-boot,swagger-ui,webjars,Groovy,Spring Boot,Swagger Ui,Webjars,在我的项目中,我使用了swagger ui库,它在类路径的根目录中有index.html文件。这样,当我点击根url(如/)时,这个index.html将成为我的应用程序的起始页。 但是我想使用我的启动项目的resources/templates文件夹中的自定义Groovy模板index.tpl。当我执行这种方法时,应用程序仍然显示来自Swagger UI JAR文件的index.html 如何使用project中的自定义页面覆盖jar中的索引页面 UPD:下面的方法不适合我。它返回404错误。
/
)时,这个index.html
将成为我的应用程序的起始页。
但是我想使用我的启动项目的
resources/templates
文件夹中的自定义Groovy模板index.tpl
。当我执行这种方法时,应用程序仍然显示来自Swagger UI JAR文件的index.html
如何使用project中的自定义页面覆盖jar中的索引页面
UPD:下面的方法不适合我。它返回404错误。然后我添加了@EnableWebMvc注释,现在Spring找不到我的Groovy模板。Groovy模板的类路径中有所有必要的依赖项,它们在属性文件中打开。Spring似乎根本无法解析Groovy模板。Spring Boot的WebMvcAutoConfigurationAdapter默认情况下(在方法AddStaticIndexHtmlViewController中)注册从“/”到“/index.html”的转发。因此,您必须在路径“/index.html”下注册视图 这可以通过控制器上的
@RequestMapping(“/index.html”)
或通过以下方式完成:
@Configuration
public class WebConfig extends WebMvcConfigurerAdapter
{
@Override
public void addViewControllers(ViewControllerRegistry registry)
{
registry.addViewController("/index.html").setViewName("index");
}
}
另一个选项是覆盖
WebMvcAutoConfigurationAdapter
并禁用WebMvcAutoConfiguration
谢谢@koe,但这种方法对我不起作用。它返回404。然后我添加了@EnableWebMvc
注释,现在Spring找不到我的Groovy模板。您是否尝试使用override WebMVCautoConfiguration适配器?感谢您的帮助!那是我的错。IntellijIdea似乎在识别Groovy模板方面存在问题,无法解决我的Groovy视图:(