@SpringbootApplication不扫描默认包中的组件

时间:2018-11-02 18:11:16

标签: spring spring-boot

嗨,我在com软件包中有我的主要课程spring boot app 以及com.bbh.fx.pack1中定义的其他两个bean。

据我了解,SpringBootApplication将自动扫描其pakacge和childern软件包中的所有组件。但这不是扫描。不知道我在想什么

    **package com.bbh.fx.pack1;**

    import org.springframework.stereotype.Component;

    import javax.annotation.PostConstruct;

    @Component
    public class BeanA {

        @PostConstruct
        public void init() {
            System.out.println("in BEANA");

        }
    }

   **package com;**

    @SpringBootApplication
    public class MainApp{
        public static void main(String[] args) {
          SpringApplication.run(MainApp.class, args);
       }
    }

2 个答案:

答案 0 :(得分:0)

您的MainApp中没有主程序,您的代码应如下所示:

<!doctype html>
<html lang="ru">
<head>
  <meta charset="utf-8"/>
  <title>Sandbox</title>
</head>
<body>
  <div class="div1"></div>
  <div class="div1"></div>
</body>
</html>

我通常希望从https://start.spring.io/启动所有新应用程序,您可以选择项目名称,构建类型(maven或gradle),并选择要包含在应用程序中的任何spring依赖项。

答案 1 :(得分:0)

使用@ComponentScan扫描组件。

@SpringBootApplication
@ComponentScan("com")
public class MainApp{

   public static void main(String[] args) {
        SpringApplication.run(MainApp.class, args);
   }
}