Spring Boot-inbyggda avbildningsprogram

Den här artikeln visar hur du gör det möjligt för Spring Cloud Azure bibliotek att fungera med inbyggda Spring Boot-avbildningsprogram.

Mer information om att använda Spring Cloud Azure-bibliotek i Spring Boot-program med Native Images finns i Introducing GraalVM Native Images i Spring-dokumentationen.

Azure SDKs:s JAR-filer är signerade. Spring Boot stöder dock inte JAR-signaturverifieringen för interna avbildningar.

För att lösa det här problemet måste du inaktivera verifieringen av JAR-signaturen enligt beskrivningen i den här artikeln.

Inaktivera verifiering av JAR-signatur

Använd följande steg för att inaktivera signaturverifiering:

  1. Skapa en custom.security-fil i src/main/resources med följande innehåll:

    jdk.jar.disabledAlgorithms=MD2, MD5, RSA, DSA
    
  2. Om du använder Maven lägger du till följande konfiguration:

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

    Om du använder Gradle lägger du till följande konfiguration:

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