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>com.bdip.cost.CostApplication</mainClass> </manifest> </archive> <outputDirectory>${boot-jar-output}</outputDirectory> </configuration>
以上就是SpringBoot JAR包瘦身后启动提示IllegalAccessError:如何解决代理类ClassLoader不一致问题?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号