Java Delombok-InvocationTargetException与JDK1.7

Java Delombok-InvocationTargetException与JDK1.7,java,java-7,lombok,Java,Java 7,Lombok,我使用以编程方式生成getter、setter、hashCode、equalas和toString。我和Eclipse luna一起工作。代码在jdk1.8上运行得非常好,但是当我将版本降级为jdk1.7时,它抛出以下错误: Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.refl

我使用以编程方式生成getter、setter、hashCode、equalas和toString。我和Eclipse luna一起工作。代码在
jdk1.8
上运行得非常好,但是当我将版本降级为
jdk1.7
时,它抛出以下错误:

Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at lombok.launch.Delombok.delombok(Delombok.java:50)
    ... 4 more
Caused by: java.lang.NoSuchFieldError: NATIVE_HEADER_OUTPUT
    at com.sun.tools.javac.file.Locations.initHandlers(Locations.java:654)
    at com.sun.tools.javac.file.Locations.<init>(Locations.java:92)
    at com.sun.tools.javac.util.BaseFileManager.createLocations(BaseFileManager.java:85)
    at com.sun.tools.javac.util.BaseFileManager.<init>(BaseFileManager.java:71)
    at com.sun.tools.javac.file.JavacFileManager.<init>(JavacFileManager.java:125)
    at com.sun.tools.javac.file.JavacFileManager$1.make(JavacFileManager.java:115)
    at com.sun.tools.javac.file.JavacFileManager$1.make(JavacFileManager.java:113)
    at com.sun.tools.javac.util.Context.get(Context.java:150)
    at com.sun.tools.javac.util.Context.get(Context.java:193)
    at com.sun.tools.javac.comp.Enter.<init>(Enter.java:142)
    at com.sun.tools.javac.comp.Enter.instance(Enter.java:115)
    at com.sun.tools.javac.comp.MemberEnter.<init>(MemberEnter.java:101)
    at com.sun.tools.javac.comp.MemberEnter.instance(MemberEnter.java:94)
    at com.sun.tools.javac.comp.Attr.<init>(Attr.java:115)
    at com.sun.tools.javac.comp.Attr.instance(Attr.java:102)
    at com.sun.tools.javac.comp.Resolve.<init>(Resolve.java:122)
    at com.sun.tools.javac.comp.Resolve.instance(Resolve.java:158)
    at com.sun.tools.javac.comp.Check.<init>(Check.java:111)
    at com.sun.tools.javac.comp.Check.instance(Check.java:99)
    at com.sun.tools.javac.code.Types.<init>(Types.java:118)
    at com.sun.tools.javac.code.Types.instance(Types.java:104)
    at com.sun.tools.javac.jvm.ClassReader.<init>(ClassReader.java:291)
    at com.sun.tools.javac.jvm.ClassReader.instance(ClassReader.java:253)
    at com.sun.tools.javac.main.JavaCompiler.<init>(JavaCompiler.java:348)
    at lombok.javac.CommentCatcher.create(CommentCatcher.java:40)
    at lombok.delombok.Delombok.delombok(Delombok.java:479)
    ... 9 more
原因:java.lang.reflect.InvocationTargetException
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)中
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:606)
Delombok.launch.Delombok.Delombok(Delombok.java:50)
... 4更多
原因:java.lang.NoSuchFieldError:本机\u头\u输出
位于com.sun.tools.javac.file.Locations.initHandlers(Locations.java:654)
位于com.sun.tools.javac.file.Locations.(Locations.java:92)
位于com.sun.tools.javac.util.BaseFileManager.createLocations(BaseFileManager.java:85)
位于com.sun.tools.javac.util.BaseFileManager。(BaseFileManager.java:71)
位于com.sun.tools.javac.file.JavacFileManager.(JavacFileManager.java:125)
位于com.sun.tools.javac.file.JavacFileManager$1.make(JavacFileManager.java:115)
位于com.sun.tools.javac.file.JavacFileManager$1.make(JavacFileManager.java:113)
位于com.sun.tools.javac.util.Context.get(Context.java:150)
位于com.sun.tools.javac.util.Context.get(Context.java:193)
在com.sun.tools.javac.comp.Enter.(Enter.java:142)
位于com.sun.tools.javac.comp.Enter.instance(Enter.java:115)
在com.sun.tools.javac.comp.MemberEnter.(MemberEnter.java:101)
位于com.sun.tools.javac.comp.MemberEnter.instance(MemberEnter.java:94)
位于com.sun.tools.javac.comp.Attr.(Attr.java:115)
位于com.sun.tools.javac.comp.Attr.instance(Attr.java:102)
位于com.sun.tools.javac.comp.Resolve(Resolve.java:122)
位于com.sun.tools.javac.comp.Resolve.instance(Resolve.java:158)
在com.sun.tools.javac.comp.Check.(Check.java:111)
位于com.sun.tools.javac.comp.Check.instance(Check.java:99)
位于com.sun.tools.javac.code.Types.(Types.java:118)
位于com.sun.tools.javac.code.Types.instance(Types.java:104)
位于com.sun.tools.javac.jvm.ClassReader.(ClassReader.java:291)
位于com.sun.tools.javac.jvm.ClassReader.instance(ClassReader.java:253)
位于com.sun.tools.javac.main.JavaCompiler.(JavaCompiler.java:348)
创建(CommentCatcher.java:40)
delombok.delombok.delombok.delombok(delombok.java:479)
... 9更多
我的maven依赖项如下所示:

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok-maven-plugin</artifactId>
    <version>1.16.6.1</version>
</dependency>
<dependency>
    <groupId>org.checkerframework</groupId>
    <artifactId>compiler</artifactId>
    <version>1.9.5</version>
</dependency>

org.projectlombok
lombok maven插件
1.16.6.1
org.checkerframework
编译程序
1.9.5

有人能解释一下吗?

即使使用包含上述依赖项的pom的简单hello world程序,也会出现这个问题,因此代码中没有任何真正的依赖项?这是生成时错误还是运行时错误?这是运行时错误。身材很好。我现在搜索了一下,发现
JDK1.8
中引入了
NATIVE\u HEADER\u OUTPUT
,因此抛出了我提到的错误。但我找不到如何修复它(即使在使用包含上述依赖项的pom的简单hello world程序时,是否也会出现此问题,因此代码中没有任何真正的依赖项?这是构建时错误还是运行时错误?这是运行时错误。构建很好。我现在在谷歌上搜索了一下,发现
本机\u头\u输出
已输入。)在JDK 1.8中产生,因此抛出了我提到的错误。但我找不到如何修复它:(