我有一个projetSpring启动多模块与下面的结构
projet
--bootloader
--command
--query
--documentation
在文档模块中,我有一个swagger配置
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket serviceProviderApi() {
...
}
}
在命令模块中,我有下面两个类
@RequestMapping(value = "questions")
public class QuestionController {
}
@Configuration
public class CommandRestConfiguration {
@Bean
public QuestionController questionController() {
return new QuestionController();
}
}
在查询模块中,我有下面两个类
@RequestMapping(value = "questions")
public class QuestionResource {
}
@Configuration
public class QueryRestConfiguration {
@Bean
public QuestionResource questionResource() {
return new QuestionResource();
}
}
我希望在运行应用程序时启动两个容器,一个用于命令,另一个用于查询,每个模块都有自己的config swagger,所以我做了以下配置
@SpringBootApplication
public class Application extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplicationBuilder parentBuilder = new SpringApplicationBuilder(Application.class);
parentBuilder.child(QueryRestConfiguration.class, SwaggerConfig.class).properties("server.port:${application.port.query}").web(WebApplicationType.NONE).run(args);
parentBuilder.child(CommandRestConfiguration.class, SwaggerConfig.class).properties("server.port:${application.port.command}").web(WebApplicationType.NONE).run(args);
}
}
但我有个错误
说明:
springfox.documentation.spring.web.plugins.documentationpluginsbootstrapper中构造函数的参数6需要一个类型为“javax.servlet.servletcontext”的bean,但找不到该bean。
行动:
考虑在配置中定义“javax.servlet.servletcontext”类型的bean。
暂无答案!
目前还没有任何答案,快来回答吧!