springboot graalvm 本地构建失败

时间:2021-02-09 15:40:39

标签: spring-boot graalvm graalvm-native-image

我正在尝试使用 graalvm-ce 21.0.0 版本为 Spring Boot 应用程序 (spring-petclinic) 进行 graalvm 原生构建。它失败并出现以下异常

org.springframework.boot.logging.logback.LogbackLoggingSystem$Factory was unintentionally initialized at build time. 
To see why org.springframework.boot.logging.logback.LogbackLoggingSystem$Factory got initialized use --trace-class-initialization=org.springframework.boot.logging.logback.LogbackLoggingSystem$Factory

at com.oracle.svm.core.util.UserError.abort(UserError.java:68)
at com.oracle.svm.hosted.classinitialization.ConfigurableClassInitialization.checkDelayedInitialization(ConfigurableClassInitialization.java:539)
at com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.duringAnalysis(ClassInitializationFeature.java:226)
at com.oracle.svm.hosted.NativeImageGenerator.lambda$runPointsToAnalysis$8(NativeImageGenerator.java:740)
at com.oracle.svm.hosted.FeatureHandler.forEachFeature(FeatureHandler.java:70)
at com.oracle.svm.hosted.NativeImageGenerator.runPointsToAnalysis(NativeImageGenerator.java:740)
at com.oracle.svm.hosted.NativeImageGenerator.doRun(NativeImageGenerator.java:563)
at com.oracle.svm.hosted.NativeImageGenerator.lambda$run$0(NativeImageGenerator.java:476)
at java.base/java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1407)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

以下是我发布的构建镜像的命令

 native-image -cp  \
$CP:spring-boot-starter-actuator-2.4.2.jar \
$CP:spring-boot-starter-2.4.2.jar \
$CP:spring-boot-starter-logging-2.4.2.jar \
$CP:logback-classic-1.2.3.jar \
$CP:logback-core-1.2.3.jar \
$CP:log4j-to-slf4j-2.13.3.jar \
$CP:log4j-api-2.13.3.jar \
$CP:jul-to-slf4j-1.7.30.jar \
$CP:jakarta.annotation-api-1.3.5.jar \
$CP:snakeyaml-1.27.jar \
$CP:spring-boot-actuator-autoconfigure-2.4.2.jar \
$CP:spring-boot-actuator-2.4.2.jar \
$CP:jackson-databind-2.11.4.jar \
$CP:jackson-annotations-2.11.4.jar \
$CP:jackson-datatype-jsr310-2.11.4.jar \
$CP:micrometer-core-1.6.3.jar \
$CP:HdrHistogram-2.1.12.jar \
$CP:LatencyUtils-2.0.3.jar \
$CP:spring-boot-starter-cache-2.4.2.jar \
$CP:spring-context-support-5.3.3.jar \
$CP:spring-beans-5.3.3.jar \
$CP:spring-context-5.3.3.jar \
$CP:spring-boot-starter-data-jpa-2.4.2.jar \
$CP:spring-boot-starter-aop-2.4.2.jar \
$CP:spring-aop-5.3.3.jar \
$CP:aspectjweaver-1.9.6.jar \
$CP:spring-boot-starter-jdbc-2.4.2.jar \
$CP:HikariCP-3.4.5.jar \
$CP:spring-jdbc-5.3.3.jar \
$CP:jakarta.transaction-api-1.3.3.jar \
$CP:jakarta.persistence-api-2.2.3.jar \
$CP:hibernate-core-5.4.27.Final.jar \
$CP:jboss-logging-3.4.1.Final.jar \
$CP:javassist-3.27.0-GA.jar \
$CP:byte-buddy-1.10.19.jar \
$CP:antlr-2.7.7.jar \
$CP:jandex-2.1.3.Final.jar \
$CP:classmate-1.5.1.jar \
$CP:dom4j-2.1.3.jar \
$CP:hibernate-commons-annotations-5.1.2.Final.jar \
$CP:spring-data-jpa-2.4.3.jar \
$CP:spring-data-commons-2.4.3.jar \
$CP:spring-orm-5.3.3.jar \
$CP:spring-tx-5.3.3.jar \
$CP:spring-aspects-5.3.3.jar \
$CP:spring-boot-starter-web-2.4.2.jar \
$CP:spring-boot-starter-json-2.4.2.jar \
$CP:jackson-datatype-jdk8-2.11.4.jar \
$CP:jackson-module-parameter-names-2.11.4.jar \
$CP:spring-boot-starter-tomcat-2.4.2.jar \
$CP:tomcat-embed-core-9.0.41.jar \
$CP:tomcat-embed-websocket-9.0.41.jar \
$CP:spring-web-5.3.3.jar \
$CP:spring-webmvc-5.3.3.jar \
$CP:spring-expression-5.3.3.jar \
$CP:spring-boot-starter-validation-2.4.2.jar \
$CP:jakarta.el-3.0.3.jar \
$CP:hibernate-validator-6.1.7.Final.jar \
$CP:jakarta.validation-api-2.0.2.jar \
$CP:spring-boot-starter-thymeleaf-2.4.2.jar \
$CP:thymeleaf-spring5-3.0.12.RELEASE.jar \
$CP:thymeleaf-3.0.12.RELEASE.jar \
$CP:attoparser-2.0.5.RELEASE.jar \
$CP:unbescape-1.1.6.RELEASE.jar \
$CP:thymeleaf-extras-java8time-3.0.4.RELEASE.jar \
$CP:jakarta.xml.bind-api-2.3.3.jar \
$CP:jakarta.activation-api-1.2.2.jar \
$CP:spring-core-5.3.3.jar \
$CP:spring-jcl-5.3.3.jar \
$CP:h2-1.4.200.jar \
$CP:mysql-connector-java-8.0.22.jar \
$CP:cache-api-1.1.1.jar \
$CP:ehcache-3.9.0.jar \
$CP:slf4j-api-1.7.30.jar \
$CP:jaxb-runtime-2.3.3.jar \
$CP:txw2-2.3.3.jar \
$CP:istack-commons-runtime-3.0.11.jar \
$CP:jakarta.activation-1.2.2.jar \
$CP:webjars-locator-core-0.46.jar \
$CP:classgraph-4.8.69.jar \
$CP:jackson-core-2.11.4.jar \
$CP:jquery-2.2.4.jar \
$CP:jquery-ui-1.11.4.jar \
$CP:bootstrap-3.3.6.jar \
$CP:spring-boot-devtools-2.4.2.jar \
$CP:spring-boot-2.4.2.jar \
$CP:spring-boot-autoconfigure-2.4.2.jar \
$CP:spring-graalvm-native-0.8.2.jar \
$CP:spring-context-indexer-5.3.3.jar \
$CP:spring-petclinic-2.4.2.jar -Dspring.graal.remove-unused-autoconfig=true --no-fallback --allow-incomplete-classpath --report-unsupported-elements-at-runtime -H:+ReportExceptionStackTraces --no-server -H:IncludeResourceBundles=javax.servlet.http.LocalStrings -H:IncludeResourceBundles=javax.servlet.LocalStrings -H:Class=org.springframework.samples.petclinic.PetClinicApplication

我尝试了另一个 spring 项目,在该项目中我遇到了类似的问题,例如“org.slf4j.MDC 在构建时被无意初始化”

能否请您告诉我原因以及如何解决此问题

0 个答案:

没有答案
相关问题