Aplicações de imagem nativas Spring Boot

Este artigo mostra-lhe como ativar as bibliotecas Spring Cloud Azure para funcionar com aplicações de imagens nativas do Spring Boot.

Para mais informações sobre a utilização de bibliotecas Spring Cloud Azure em aplicações de imagens nativas Spring Boot, consulte Introdução das Imagens Nativas GraalVM na documentação Spring.

Os JARs do SDK do Azure estão assinados. No entanto, o Spring Boot não suporta a verificação de assinatura JAR para imagens nativas.

Para resolver este problema, deve desativar a verificação de assinatura JAR, conforme descrito neste artigo.

Desativar a verificação de assinatura JAR

Use os seguintes passos para desativar a verificação de assinatura:

  1. Crie um ficheiro custom.security em src/main/resources com o seguinte conteúdo:

    jdk.jar.disabledAlgorithms=MD2, MD5, RSA, DSA
    
  2. Se estiveres a usar Maven, adiciona a seguinte configuração:

    <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>
    

    Se estiver a usar Gradle, adicione a seguinte configuração:

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