@SpringBootApplication
public class Application {
public static void main(String[] args) throws IOException {
ConfigurableApplicationContext context = SpringApplication.run(Application.class, args);
// 加载类路径下的spring.factories,依赖中的jar包不加载
Resource[] resources1 = context.getResources("classpath:/META-INF/spring.factories");
for (Resource resource : resources1) {
System.out.println("resources1 = " + resource);
}
// 加载类路径下的spring.factories,包括依赖中的jar包
Resource[] resources2 = context.getResources("classpath*:/META-INF/spring.factories");
for (Resource resource : resources2) {
System.out.println("resources2 = " + resource);
}
}
}
运行结果
resources1 = class path resource [META-INF/spring.factories]
resources2 = URL [jar:file:/C:/develop/repository/org/springframework/boot/spring-boot/2.1.8.RELEASE/spring-boot-2.1.8.RELEASE.jar!/META-INF/spring.factories]
resources2 = URL [jar:file:/C:/develop/repository/org/springframework/boot/spring-boot-autoconfigure/2.1.8.RELEASE/spring-boot-autoconfigure-2.1.8.RELEASE.jar!/META-INF/spring.factories]
resources2 = URL [jar:file:/C:/develop/repository/org/springframework/spring-beans/5.1.9.RELEASE/spring-beans-5.1.9.RELEASE.jar!/META-INF/spring.factories]
评论区