You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

启动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

火山引擎 最新活动