如果在controller下的MainApplication主程序所在包及其下面的所有子包里面的组件都会被默认扫描进来
但是如果建立在主程序上,比如说在atguigu下建立WorldController类,那么就会扫描不到,运行时会报错

解决方法:
方法一:在主程序@SpringBootApplication注解里修改一下我们要扫描的基础包
package com.atguigu.boot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* @author LunarYouI
* @create 2021-03-18 15:57
*/
/**
* 主程序类
*
* @SpringBootApplication:这是一个SpringBoot应用
*/
@SpringBootApplication(scanBasePackages = "com.atguigu")
public class MainApplication {
public static void main(String[] args) {
SpringApplication.run(MainApplication.class,args);
}
}

方法二:点击@SpringBootApplication 你会发现这个注解是一个合成注解
然后将其中三个拿出来,放入主程序里面,再到@ComponentScan中修改扫描的基础包
package com.atguigu.boot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.SpringBootConfiguration;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
/**
* @author LunarYouI
* @create 2021-03-18 15:57
*/
/**
* 主程序类
*
* @SpringBootApplication:这是一个SpringBoot应用
*/
//@SpringBootApplication(scanBasePackages = "com.atguigu")
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan("com.atguigu")
//@SpringBootApplication
public class MainApplication {
public static void main(String[] args) {
SpringApplication.run(MainApplication.class,args);
}
}

版权声明:本文为qq_46100517原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。