Juz*_*Ali 5 spring tomcat spring-aop load-time-weaving spring-boot
我正在编写一个打包为可执行jar文件的spring boot web应用程序,我需要加载时间AspectJ编织.使用-javaagent对我来说不是一个选项,因为它需要我们的DevOps来更改部署工具链,我现在不想处理它.这是我的主课.
@SpringBootApplication
@EnableLoadTimeWeaving(aspectjWeaving=AspectJWeaving.ENABLED)
public class Application extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Bean
public LoadTimeWeaver loadTimeWeaver() {
return new InstrumentationLoadTimeWeaver();
}
}
Run Code Online (Sandbox Code Playgroud)
这没用.我认为注入InstrumentationLoadTimeWeaver嵌入式Tomcat 可能效果不佳.我尝试用它替换它TomcatLoadTimeWeaver.但结果是Spring上下文无法加载以下错误消息.
引起:java.lang.IllegalStateException:无法初始化TomcatLoadTimeWeaver,因为Tomcat API类不可用
spring-boot github问题上的这个错误得出结论,当前AspectJ加载时编织不能与嵌入式tomcat一起使用.我的问题是为什么不可能?我想了解什么是加载时间编织机制,这使得无法在可执行的Spring启动Web jar中工作.
| 归档时间: |
|
| 查看次数: |
1595 次 |
| 最近记录: |