Tanzu Spring Commercial

Enterprise Spring Boot Governance Starter Troubleshooting

Last Updated February 28, 2025

This topic describes issues you may run into while setting up Enterprise Spring Boot Governance Starter in your application dependencies, along with solutions or workarounds.

Problems running your app as a fat jar

After adding Enterprise Spring Boot Governance Starter as a dependency to your application, you may run into the following error when running the fat jar produced by the Spring Boot plug-in:

11:42:15.126 [main] ERROR org.springframework.boot.SpringApplication -- Application run failed
org.bouncycastle.crypto.fips.FipsOperationError: Module checksum failed: unable to find
	at org.bouncycastle.crypto.fips.FipsStatus.checksumValidate(Unknown Source)
	at org.bouncycastle.crypto.fips.FipsStatus.isReady(Unknown Source)
    ...

Cause

The current version of Bouncy Castle is not compatible with the nested jar support in Spring Boot 3.2. For more details, see bc-fips and SpringBoot 3.2 compatibility issue.

Solution

Until the new Bouncy Castle fix is approved again, the workaround is to use the Spring Boot loader fallback option to your application:

  • For Gradle:

    bootJar {
        loaderImplementation = org.springframework.boot.loader.tools.LoaderImplementation.CLASSIC
    }
    
  • For Maven:

    <build>
    <plugins>
        <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
            <executions>
            <execution>
                <goals>
                    <goal>repackage</goal>
                </goals>
                <configuration>
                    <loaderImplementation>CLASSIC</loaderImplementation>
                </configuration>
            </execution>
            </executions>
        </plugin>
    </plugins>
    </build>