本站资源收集于互联网,不提供软件存储服务,每天免费更新优质的软件以及学习资源!

SpringBootJAR包瘦身后启动提示IllegalAccessError:如何解决代理类ClassLoader不一致问题?

网络教程 app 1℃

SpringBootJAR包瘦身后启动提示IllegalAccessError:如何解决代理类ClassLoader不一致问题

springboot jar包瘦身后启动提示 illegalaccesserror

问题描述:

springboot jar包瘦身后,使用java -jar启动报错 illegalaccesserror。

原因:

在aspectjawareadvisorautoproxycreator的postprocessafterinitialization方法中,代理类创建过程中获取的classloader与bean实际的classloader不一致,导致无法获取对应的父类。

解决方案:

去掉spring-boot-maven-plugin插件,在maven-dependency-plugin中添加main-class和outputdir配置,例如:

<configuration> <archive> <manifest><addClasspath>true</addClasspath><classpathPrefix>lib/</classpathPrefix><useUniqueVersions>false</useUniqueVersions><mainClass>.bdip.cost.CostApplication</mainClass> </manifest> </archive> <outputDirectory>${boot-jar-output}</outputDirectory></configuration>

以上就是SpringBoot JAR包瘦身后启动提示IllegalAccessError:如何解决代理类ClassLoader不一致问题?的详细内容,更多请关注范的资源库其它相关文章!

转载请注明:范的资源库 » SpringBootJAR包瘦身后启动提示IllegalAccessError:如何解决代理类ClassLoader不一致问题?

喜欢 (0)