lombok和jdk版本不兼容,将jdk12换成jdk1.8解决

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了lombok和jdk版本不兼容,将jdk12换成jdk1.8解决相关的知识,希望对你有一定的参考价值。

参考技术A Warning:(12, 8) java: lombok.javac.apt.LombokProcessor could not be initialized. Lombok will not run during this compilation: java.lang.IllegalArgumentException: com.sun.tools.javac.main.DelegatingJavaFileManager$DelegatingSJFM extends com.sun.tools.javac.main.DelegatingJavaFileManager implements javax.tools.StandardJavaFileManager

  at lombok.javac.apt.LombokFileObjects.getCompiler(LombokFileObjects.java:148)

  at lombok.javac.apt.InterceptingJavaFileManager.<init>(InterceptingJavaFileManager.java:40)

  at lombok.javac.apt.LombokProcessor.placePostCompileAndDontMakeForceRoundDummiesHook(LombokProcessor.java:165)

  at lombok.javac.apt.LombokProcessor.init(LombokProcessor.java:87)

  at lombok.core.AnnotationProcessor$JavacDescriptor.want(AnnotationProcessor.java:87)

  at lombok.core.AnnotationProcessor.init(AnnotationProcessor.java:140)

  at lombok.launch.AnnotationProcessorHider$AnnotationProcessor.init(AnnotationProcessor.java:69)

  at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment$ProcessorState.<init>(JavacProcessingEnvironment.java:683)

  at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment$DiscoveredProcessors$ProcessorStateIterator.next(JavacProcessingEnvironment.java:783)

  at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:878)

  at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1219)

  at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1331)

  at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1258)

  at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:936)

  at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.lambda$doCall$0(JavacTaskImpl.java:104)

  at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.handleExceptions(JavacTaskImpl.java:147)

  at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:100)

  at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:94)

  at org.jetbrains.jps.javac.JavacMain.compile(JavacMain.java:190)

  at org.jetbrains.jps.incremental.java.JavaBuilder.compileJava(JavaBuilder.java:458)

  at org.jetbrains.jps.incremental.java.JavaBuilder.compile(JavaBuilder.java:328)

  at org.jetbrains.jps.incremental.java.JavaBuilder.doBuild(JavaBuilder.java:253)

  at org.jetbrains.jps.incremental.java.JavaBuilder.build(JavaBuilder.java:211)

  at org.jetbrains.jps.incremental.IncProjectBuilder.runModuleLevelBuilders(IncProjectBuilder.java:1328)

  at org.jetbrains.jps.incremental.IncProjectBuilder.runBuildersForChunk(IncProjectBuilder.java:1008)

  at org.jetbrains.jps.incremental.IncProjectBuilder.buildTargetsChunk(IncProjectBuilder.java:1075)

  at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunkIfAffected(IncProjectBuilder.java:969)

  at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunks(IncProjectBuilder.java:798)

  at org.jetbrains.jps.incremental.IncProjectBuilder.runBuild(IncProjectBuilder.java:380)

  at org.jetbrains.jps.incremental.IncProjectBuilder.build(IncProjectBuilder.java:178)

  at org.jetbrains.jps.cmdline.BuildRunner.runBuild(BuildRunner.java:139)

  at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:302)

  at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:135)

  at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler.lambda$channelRead0$0(BuildMain.java:228)

  at org.jetbrains.jps.service.impl.SharedThreadPoolImpl.lambda$executeOnPooledThread$0(SharedThreadPoolImpl.java:42)

  at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)

  at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)

  at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)

  at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)

  at java.base/java.lang.Thread.run(Thread.java:835)

Solr与JDK对应版本关系,Tomcat与JDK版本对应关系

 

  最新在部署solrCloud集群,由于自己机器上用的JDK都是JDK1.7的,然后我就从网上下载了最新下载了最先的solr6.6.0和最新的Tomcat9.0,部署了一下,开始报错,提示solr和JDK版本不兼容,Tomcat和JDK版本不兼容,所以在这里特意记录一下solr、JDK、Tomcat版本对应关系。

一、solr与JDK版本对应关系

  1、solr下载

  首先,说一下solr的下载,官网有很对下载源,我最常用的是http://archive.apache.org/dist/lucene/solr/ ,这个里面比较全面。

  2、solr预览

solr基础信息
名称 solr
描述 基于Apache Lucene的企业家搜索引擎
DB-Engines排名 14(2017年7月)
网站 http://lucene.apache.org/solr/
开发组织 Apache Software Foundation
首次发布 2004年
许可 开源
实现语言 Java
Data scheme 支持
第二索引 支持
Triggers 支持

 

  3、solr各个版本介绍

  

版本 发布时间 说明    
1.1 2007-01-18 -
1.2 2007-06-06 -
1.3.0 2008-09-15 lucene2.3;引入拼写检查、数据导入、排序、分布式搜索
1.4.0 2009-11-09 lucene2.9.3
1.4.1 2010-06-24 -
3.1.0 2011-03-30 Lucene 3.1.0
3.5.0 2011-11-25 -
4.0.0 2013-01-16 Java 1.6以上,ZooKeeper 3.3.6;引入solrcloud
4.1.0 2013-01-21 Java 1.6以上,lucene4.1
4.2.0 2013-03-11 有bug,不能线上使用
4.3.1 2013-06-14 可以线上使用,还未引入5.0的新特性
4.4.0 2013-07-22 有bug,不能线上使用
4.5.0 2013-10-04 Java 1.6以上,ZooKeeper 3.4.5
4.6.0 2013-11-22 有bug,不能线上使用
4.7.1 2014-04-01 Java 1.6以上,最后一个采用旧版配置方法版本
4.8.0 2014-04-27 Java 1.7以上,ZooKeeper 3.4.6
4.10.0 2014-09-02 Java 1.7以上
5.0.0 2015-02-19 Java 1.7以上,Jetty 8.1.10
5.4.0 2015-12-10 Java 1.7以上,Jetty 9.2.13
5.5.0 2016-02-20 Java 1.7以上,Solr schema version支持1.6
6.0.0 2016-04-07 Java 1.8以上,Jetty 9.3.8
6.1.0 2016-06-16 Java 1.8以上,Jetty 9.3.8
6.2.0 2016-08-24 Java 1.8以上
6.3.0 2016-11-08 Java 1.8以上
6.4.0 2017-01-20 Java 1.8以上
6.5.0 2017-03-25 Java 1.8以上
6.6.0 2017-06-26 Java 1.8以上

备注:

  • Solr 3.1.0是从Solr1.4的版本升级过来的
  • 你可以在下载的压缩包里面的CHANGES.txt 找到当前版本的说明。

 

二、Tomcat与JDK对应关系

 

 所以我最后使用JDK1.7+Tomcat8.5+solr5.5.4配置solrCloud

以上是关于lombok和jdk版本不兼容,将jdk12换成jdk1.8解决的主要内容,如果未能解决你的问题,请参考以下文章

JDK和Lombok版本兼容问题

JDK和Lombok版本兼容问题

Zulu JDK Linux和Aspose 运行不兼容问题

IDEA使用的JDK版本1.9换成1.8后,在IDEA中需要改的配置

tomcat9和jdk1.7兼容吗

CTO 说禁用 Lombok,看我怼死他。。