我有一个Spring Boot应用程序,我想导入一个用Spring Boot编写的依赖项,该依赖项定义了一些控制器。
也许很简单,但是如何使主应用程序能够初始化导入模块中的所有这些控制器?当我尝试访问这些控制器的路径时,由于缺少给定路径的处理程序方法而收到错误消息。我尝试如下:
@SpringBootApplication
@ComponentScan(basePackages = {"com.main.project", "com.imported.dependency"})
public class MyApplication
implements CommandLineRunner {
public static void main(final String... args) {
SpringApplication app = new SpringApplication(MyApplication.class);
app.setWebEnvironment(true);
app.run(args);
}
}
即我尝试了@ComponentScan
,但没有任何反应。
我还尝试查看控制器是否已加载:
ApplicationContext ctx = SpringApplication.run(FrontendApplication.class, args);
System.out.println("Let's inspect the beans provided by Spring Boot:");
String[] beanNames = ctx.getBeanDefinitionNames();
Arrays.sort(beanNames);
for (String beanName : beanNames) {
System.out.println(beanName);
}
他们不是。我尝试删除@SpringBootApplication
并使用@EnableAutoConfiguration
和@ComponentScan
,但这不起作用。
有什么建议吗?
在讨论了主线程之后,我尝试建立一个像您的小项目,并将其放在github上,我看不到任何问题。
看看https://github.com/e-ivaldi/mat_boy_test
这是从日志2015-10-24 17:22:02.900信息31901 --- [main] swsmmaRequestMappingHandlerMapping:将“ {[/ **]}”映射到公共java.lang.String com.somethingelse.controllers.SimpleController。 xxx()
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句