使用Spring Boot Starter Mail创建MimeMessageHelper时类访问失败的解决方法
解决Spring Boot Starter Mail创建MimeMessageHelper时的LogSupport访问异常
在使用Spring Boot Starter Mail并尝试创建MimeMessageHelper实例时,会触发如下异常:
failed to access class com.sun.activation.registries.LogSupport from class javax.activation.MimetypesFileTypeMap
问题原因
jaxb-core 4.0.0版本默认引入了angus-activation库,若该库在类加载时被优先加载,会因为它不包含公共的LogSupport类而导致报错。LogSupport的正确依赖来源是com.sun.activation:jakarta.activation。
解决步骤
- 第一步:在jaxb-core依赖中排除angus-activation
<dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-core</artifactId> <version>4.0.0</version> <exclusions> <exclusion> <groupId>org.eclipse.angus</groupId> <artifactId>angus-activation</artifactId> </exclusion> </exclusions> </dependency> - 第二步:显式引入指定版本的jakarta.activation依赖
<dependency> <groupId>com.sun.activation</groupId> <artifactId>jakarta.activation</artifactId> <version>2.0.1</version> </dependency>
内容的提问来源于stack exchange,提问作者Adam Sojka
相关产品推荐
相关产品推荐

