为什么 spring bean 不是在 jar 文件中创建的,而是在 class 文件中

Why spring beans are not created in jar files, but in class files

我正在使用 spring 通过注释进行一些依赖注入。问题是每当我启动应用程序并使用由 gradle 创建的 .jar 时,我都会在类路径中收到以下异常:"org.springframework.beans.factory.NoSuchBeanDefinitionException"

但是如果 /build/classes/main/ 在类路径中,则创建 bean 并且不会抛出异常。

因此 bean 是在 build/classes/main/ 而不是在 build/libs/*.jar

中创建的

设置 @ComponentScan("classpath*:org.mypackage") 让 Spring 也扫描 jars。