記錄一次OracleJDK開發的項目發部到Linux中使用OpenJDK啟動后失敗的錯誤的解決方案


一、現象

       基於JAVA SpringBoot2.0.4的項目,發部后項目發部后,放到OpenJDK環境中運行時,提示下列錯誤:

2019-10-22 10:03:55 [main] WARN  o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'defaultValidator' defined in class path resource [org/springframework/boot/autoconfigure/validation/ValidationAutoConfiguration.class]: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class org.hibernate.validator.internal.engine.valueextraction.ValueExtractorManager

  但是使用OracleJDK是正常的。

  如圖:

 

 

二、解決方案

    1、解決方案一:

         (1)經過檢查,原因是使用IDEA2019.2.3發部出來的文件中,包含一個jar:javafx.base-11.0.0-20180702.224858-3.jar、javafx.base-11.0.0-20180702.223831-2-linux.jar、javafx.base-11.0.0-20180702.224858-3-mac.jar 把這三個JAR刪除即可。

         (2)修改設置中的下列地方為你所使用的jdk版本。

 

 

 2、 解決方案二:使用IDEA2018.1版本發部。

 

    3、 解決方案三:找到Maven的存儲倉庫,刪除掉javafx這些jar所在目錄即可。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM