Rate This Document
Findability
Accuracy
Completeness
Readability

"no conscrypt_openjdk_jni-linux-aarch_64 in java.library.path" Displayed When Compiling Spring Boot

Symptom

The conscrypt-openjdk-uber-2.1.0.jar package is required for the Spring Boot compilation, while the JAR package does not contain the SO file of the AArch64 architecture. The error message "java.lang.UnsatisfiedLinkError: no conscrypt_openjdk_jni-linux-aarch_64 in java.library.path" is displayed. Therefore, you need to replace the original JAR package with the conscrypt-openjdk-uber-2.1.0.jar package that supports the AArch64 architecture.

Key Process and Cause Analysis

The original conscrypt-openjdk-uber-2.1.0.jar package does not support the AArch64 architecture and needs to be replaced with a JAR package that supports the AArch64 architecture.

Conclusion and Solution

  1. Create a /root/.m2/repository/org/conscrypt/conscrypt-openjdk-uber/2.1.0 directory.
  2. Obtain the conscrypt-openjdk-uber-2.1.0.jar package that supports the AArch64 architecture.
    wget https://mirrors.huaweicloud.com/kunpeng/maven/org/conscrypt/conscrypt-openjdk-uber/2.1.0/conscrypt-openjdk-uber-2.1.0.jar --no-check-certificate

    You can also replace the conscrypt-openjdk-uber-2.1.0.jar package by following instructions in conscrypt-openjdk-uber-2.1.0.jar Porting Guide.

  3. Copy the downloaded conscrypt-openjdk-uber-2.1.0.jar package to the /root/.m2/repository/org/conscrypt/conscrypt-openjdk-uber/2.1.0 directory.
    \cp conscrypt-openjdk-uber-2.1.0.jar  /root/.m2/repository/org/conscrypt/conscrypt-openjdk-uber/2.1.0
  4. Recompile Spring Boot.