启动Spring Boot服务器时Jasypt类文件找不到异常求助
Hey,我之前也踩过这个Jasypt集成的坑,给你几个实打实的排查步骤,应该能解决你的问题:
解决方案排查步骤
1. 先确认版本兼容性
你当前用的Spring Boot是2.2.6.RELEASE,而Jasypt Spring Boot Starter 3.0.2要求的最低Spring Boot版本是2.3.x,版本不匹配直接会导致类加载异常。建议先降级Jasypt到2.1.2版本,这个版本完美适配Spring Boot 2.2.x系列:
<dependency> <groupId>com.github.ulisesbocchio</groupId> <artifactId>jasypt-spring-boot-starter</artifactId> <version>2.1.2</version> </dependency>
2. 检查本地Maven依赖完整性
有时候Maven自动下载的jar包可能损坏或者不完整,你可以:
- 手动删除本地Maven仓库中
com/github/ulisesbocchio路径下的所有文件夹 - 执行
mvn clean install -U命令强制重新拉取所有依赖 - 拉取完成后,查看对应版本的
jasypt-spring-boot.jar中是否包含com/ulisesbocchio/jasyptspringboot/configuration/EnableEncryptablePropertiesConfiguration.class文件
3. 排查依赖冲突
执行mvn dependency:tree命令,查看输出中是否有多个版本的jasypt-spring-boot依赖被引入。如果发现冲突,找到冲突的依赖源,在对应的dependency中添加排除规则:
<exclusion> <groupId>com.github.ulisesbocchio</groupId> <artifactId>jasypt-spring-boot</artifactId> </exclusion>
4. 同步IDE类路径
如果是用IDEA/Eclipse开发,IDE可能没有及时同步Maven依赖:
- IDEA:点击右侧Maven面板的「Reload All Maven Projects」按钮,或者执行
File -> Invalidate Caches...并重启IDE - Eclipse:右键项目 -> Maven -> Update Project,勾选「Force Update of Snapshots/Releases」后点击确定
5. 检查是否误排除核心依赖
确认你的pom.xml中没有对jasypt-spring-boot核心依赖进行排除,starter本身依赖这个核心包,一旦被排除就会缺失关键类。
内容的提问来源于stack exchange,提问作者Maze




