You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SpringBoot中org.bouncycastle.openssl.PEMParser导入失败求助

问题:SpringBoot项目无法导入org.bouncycastle.openssl.PEMParser

我在SpringBoot项目中尝试导入import org.bouncycastle.openssl.PEMParser,但始终无法成功。我的build.gradle中已配置依赖implementation 'org.bouncycastle:bcprov-jdk15on:1.70',且查找到的参考资料均使用该类。我已经尝试了谷歌搜索解决方案、更换库版本、清除IntelliJ缓存等操作,问题仍未解决。

我的build.gradle配置如下:

plugins {
    id 'java'
    id 'org.springframework.boot' version '2.5.9'
    id 'io.spring.dependency-management' version '1.1.0'
}

group = 'tellingme'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'

configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.springframework.boot:spring-boot-starter-validation'
    implementation 'org.projectlombok:lombok:1.18.20'
    implementation 'org.jetbrains:annotations:20.1.0'
    implementation 'org.jetbrains:annotations:20.1.0'
    compileOnly 'org.projectlombok:lombok'
    annotationProcessor 'org.projectlombok:lombok'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    runtimeOnly 'mysql:mysql-connector-java:8.0.30'
    implementation group: 'io.springfox', name: 'springfox-swagger-ui', version: '2.9.2'
    implementation group: 'io.springfox', name: 'springfox-swagger2', version: '2.9.2'
    implementation 'io.jsonwebtoken:jjwt:0.9.1'
    testCompileOnly 'org.projectlombok:lombok'
    testAnnotationProcessor 'org.projectlombok:lombok'
    implementation 'org.springframework.boot:spring-boot-starter-security:2.7.5'
    implementation 'org.springframework.boot:spring-boot-starter-actuator'
    runtimeOnly 'io.micrometer:micrometer-registry-prometheus'
    implementation group: 'com.googlecode.json-simple', name: 'json-simple', version: '1.1.1'
    implementation 'com.github.maricn:logback-slack-appender:1.4.0'
    implementation 'com.opencsv:opencsv:5.5'
    implementation 'org.springframework.boot:spring-boot-starter-mail'
    implementation 'com.google.firebase:firebase-admin:6.8.1'
    implementation group: 'com.squareup.okhttp3', name: 'okhttp', version: '4.2.2'
    implementation 'org.bouncycastle:bcprov-jdk15on:1.70'
}

jar {
    enabled = false
}
解决方案
  • 核心问题:PEMParser类并不在bcprov-jdk15on包中,而是属于bcpkix-jdk15on包。你当前的依赖只引入了基础加密包,缺少处理PKIX(公钥基础设施)和SSL相关工具的包。

  • 修复步骤:

    1. 在build.gradle的dependencies块中添加以下依赖,版本保持和bcprov一致:
      implementation 'org.bouncycastle:bcpkix-jdk15on:1.70'
      
    2. 点击IntelliJ中的「Sync Now」按钮,重新同步Gradle依赖。
    3. 再次尝试导入org.bouncycastle.openssl.PEMParser,此时应该可以正常识别。
  • 额外检查:

    • 确保你的SpringBoot版本(2.5.9)和BouncyCastle 1.70版本兼容,两者不存在冲突。
    • 如果同步后仍有问题,可以尝试执行./gradlew clean build --refresh-dependencies命令,强制刷新依赖并重新构建项目。

内容的提问来源于stack exchange,提问作者이기태

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 00:53:21