类加载器问题

1、springboot项目中,xstream序列化xml为JavaBean时,使用的类加载器和项目本身的加载器不一样,需要手动设置类加载器

上面问题归根到底是类加载器不一致:


springboot项目中如果引用了spring-boot-devtools,则项目中的类文件使用org.springframework.boot.devtools.restart.classloader.RestartClassLoader类加载器加载,而jar包中序列化,发序列化用的是sun.misc.Launcher$AppClassLoader类加载器加载

(https://blog.csdn.net/m0_38043362/article/details/78064539)

解决问题:类型转换要保持类加载器一致

1)、不用dev-tools

2)、手动设置类加载器(感觉最简单,比如第一张截图)

3)、jar包的类加载器使用dev-tools中的,只要通过MATA-INFO下面的spring-devtoos.properties文件配置

        restart.include.projectcommon=/devtools-serialization-[\\w.-]+.jar

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。