Spring Boot ネイティブ イメージ アプリケーション

この記事では、Spring Cloud Azure ライブラリを Spring Boot ネイティブ イメージ アプリケーションで動作させる方法について説明します。

Spring Boot ネイティブ イメージ アプリケーションでの Spring Cloud Azure ライブラリの使用の詳細については、Spring ドキュメントの GraalVM ネイティブ イメージの概要を参照してください。

Azure SDK JAR が署名されています。 ただし、Spring Boot では、ネイティブ イメージの JAR 署名検証はサポートされていません。

この問題を解決するには、この記事の説明に従って JAR 署名の検証を無効にする必要があります。

JAR 署名の検証を無効にする

署名の検証を無効にするには、次の手順に従います。

  1. 次の内容を含む custom.security ファイルを src/main/resources に作成します。

    jdk.jar.disabledAlgorithms=MD2, MD5, RSA, DSA
    
  2. Maven を使用している場合は、次の構成を追加します。

    <plugin>
        <groupId>org.graalvm.buildtools</groupId>
        <artifactId>native-maven-plugin</artifactId>
        <configuration>
            <buildArgs>
                <arg>-Djava.security.properties=src/main/resources/custom.security</arg>
            </buildArgs>
        </configuration>
    </plugin>
    

    Gradle を使用している場合は、次の構成を追加します。

    graalvmNative {
      binaries {
        main {
          buildArgs('-Djava.security.properties=' + file("$rootDir/custom.security").absolutePath)
        }
      }
    }