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

升级BouncyCastle至1.66后Java应用无法部署到WildFly求助

BouncyCastle 1.66升级后WildFly部署失败问题解决

核心问题总结

  • WildFly类索引器无法处理BouncyCastle 1.66包中的module-info.class(BC从1.64版本开始加入该文件适配高版本JDK,但JDK8不支持模块,导致WildFly处理出错)
  • ejbca-ws-cli-6-6.0.jar存在无效的Class-Path引用
  • 最终触发java.lang.ArrayIndexOutOfBoundsException: 1612导致部署失败

解决方案

1. 剔除War包中所有依赖的module-info.class

JDK8不需要模块信息,直接用Maven打包插件过滤掉这些文件:
在pom.xml的<build>节点下添加maven-war-plugin配置:

<plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <version>3.3.2</version>
        <configuration>
            <packagingExcludes>WEB-INF/lib/*/module-info.class</packagingExcludes>
        </configuration>
    </plugin>
</plugins>

2. 修复ejbca-ws-cli-6-6.0.jar的无效Class-Path引用

  • 如果是手动添加的jar:打开该jar,找到META-INF/MANIFEST.MF文件,删除或修正Class-Path行里的无效路径/依赖,重新打包jar后再引入。
  • 如果是Maven依赖:排查该jar的传递依赖,排除不存在的依赖项,或者替换为版本兼容的ejbca-ws-cli版本。

3. 调整BouncyCastle依赖方式避免冲突

方式一:让WildFly提供BC 1.66模块

既然你设置了<scope>provided</scope>,就得确保WildFly用的是1.66版本的BC:

  • 找到WildFly安装目录下的modules/system/layers/base/org/bouncycastle
  • 替换目录里的bcprov、bcmail、bcpkix jar为1.66版本,同时修改module.xml里的版本信息。
方式二:War包自带BC,排除WildFly自带的旧版本

把BC的依赖范围改成compile,然后在War包的WEB-INF下创建jboss-deployment-structure.xml,排除WildFly自带的BC模块:

<jboss-deployment-structure>
    <deployment>
        <exclusions>
            <module name="org.bouncycastle"/>
        </exclusions>
    </deployment>
</jboss-deployment-structure>

4. 升级Maven打包插件版本

旧版本的Maven插件可能处理新jar时存在兼容性问题,升级插件并指定JDK版本:
在pom.xml的<build>节点下添加maven-compiler-plugin配置:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.1</version>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
    </configuration>
</plugin>

内容的提问来源于stack exchange,提问作者user3637971

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 17:35:16