spring boot @EnableAutoConfiguration 导致CNF问题
来源:互联网 发布:php开发短信平台 编辑:程序博客网 时间:2024/05/09 05:54
最近在用 spring 构建插件架构时,发现如果被载入的spring 配置类包含 @EnableAutoConfiguration 注解,则会导致CNF (class not found) 问题。但奇怪的是,在容器中设置类加载器时,已经包含了插件依赖的包,还是报这个错,甚至,在调试时,直接用容器的类加载器去加载找不到的这个类,居然还找到了。由此确定报错的地方没有使用容器的类加载器。经过排查发现是因为配置类中加了@EnableAutoConfiguration这个注解。
官方解释,这个注解会根据当前类路径中包含的类来推断是否应该配置某些bean,问题就来了,这个猜测机制肯定会用到类加载器,否则如何载入bean?但没有看到任何地方提供方法来替换该类加载器,因此推测此加载器是封装在 spring 内部的。
因为用到 @EnableAutoConfiguration 注解的地方是为了提供插件调试用的简易容器实现,所以直接 @Profile(“ignored”) 来避免该配置类被载入。
0 0
- spring boot @EnableAutoConfiguration 导致CNF问题
- Spring Boot的@SpringBootApplication、@EnableAutoConfiguration、@ComponentScan注解
- Spring Boot自动配置(Auto-Configuration),@EnableAutoConfiguration,Spring Beans和依赖注入
- Spring Java Configuration之@EnableAutoConfiguration
- @EnableAutoConfiguration
- @EnableAutoConfiguration
- 修改my.cnf文件导致mysql启动不了的问题
- 关于spring boot 中App类位置不同导致出错的问题的解决方法
- 使用spring-boot-devtools导致在Eclipse下的UnsatisfiedLinkError问题
- spring boot请求乱码----tomcat导致乱码
- Spring Boot 注意问题
- Spring Boot问题总结
- Spring Boot 问题汇总
- Spring boot security问题
- 解决maven工程中使用spring-boot后导致的profile多环境配置失效的问题
- spring boot errorPageFilter 冲突问题。
- spring boot mybatis相关问题
- Spring Boot 问题及解决方法
- 字符串包含问题
- HTML5 input file 打开很慢的问题
- yii2.0控制层操作分页增删
- CUDA 学习(二十)、优化策略5: 算法
- C++ 高质量编程附录试题
- spring boot @EnableAutoConfiguration 导致CNF问题
- mysql utf8mb4_unicode_ci utf8mb4_general_ci
- Java开发常见英文
- Servlet和JavaScript界面弹出提示框。
- iOS开发技巧大全
- 支付流程注意事项
- android中textView文本过长打省略号
- 服务器判断ua-302跳转方法--2016年4月14日
- 平常要注意的基础知识(转载)