【发布时间】:2019-10-07 19:35:58
【问题描述】:
我想使用 cumulocity api 进行开发,所以我下载了 java 示例 (https://bitbucket.org/m2m/cumulocity-clients-java) 版本 1004.7.0 的源代码。
当尝试使用 maven 使用 java 11 (openjdk 11.0.2) 编译它时,出现以下异常:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.0:compile (default-compile) on project device-capability-model: Fatal error compiling: java.lang.ExceptionInInitializerError: com.sun.tools.javac.code.TypeTags -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.0:compile (default-compile) on project device-capability-model: Fatal error compiling
....
Caused by: java.lang.ClassNotFoundException: com.sun.tools.javac.code.TypeTags
at java.lang.ClassLoader.findClass (ClassLoader.java:718)
at java.lang.ClassLoader.loadClass (ClassLoader.java:588)
at lombok.launch.ShadowClassLoader.loadClass (ShadowClassLoader.java:422)
at java.lang.ClassLoader.loadClass (ClassLoader.java:521)
at java.lang.Class.forName0 (Native Method)
at java.lang.Class.forName (Class.java:315)
at lombok.javac.JavacTreeMaker$SchroedingerType.getFieldCached (JavacTreeMaker.java:156)
at lombok.javac.JavacTreeMaker$TypeTag.typeTag (JavacTreeMaker.java:245)
at lombok.javac.Javac.<clinit> (Javac.java:155)
at lombok.javac.handlers.HandleGetter.<clinit> (HandleGetter.java:303)
at java.lang.Class.forName0 (Native Method)
at java.lang.Class.forName (Class.java:398)
at lombok.core.SpiLoadUtil$1$1.next (SpiLoadUtil.java:111)
at lombok.javac.HandlerLibrary.loadAnnotationHandlers (HandlerLibrary.java:171)
at lombok.javac.HandlerLibrary.load (HandlerLibrary.java:156)
at lombok.javac.JavacTransformer.<init> (JavacTransformer.java:44)
at lombok.javac.apt.LombokProcessor.init (LombokProcessor.java:89)
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 com.sun.tools.javac.processing.JavacProcessingEnvironment$ProcessorState.<init> (JavacProcessingEnvironment.java:678)
作为参考,使用的maven命令是:
mvn clean package -Dmaven.test.skip=true -e
是否有与 java 11 一起编译的版本?或者我需要进行哪些配置才能使用 java 11 编译它?
【问题讨论】:
-
你可以在这里发布 pom.xml 吗?
-
您需要将 Lombok 依赖更新到 1.18.4 或更高版本
-
我有 1.18.10 并且仍然遇到同样的错误
标签: java java-11 cumulocity