Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java构建已开始失败-编译时出现致命错误:Java.lang.IllegalAccessError:class lombok.javac.apt.LombokProcessor_Java_Amazon Ec2_Bitbucket - Fatal编程技术网

Java构建已开始失败-编译时出现致命错误:Java.lang.IllegalAccessError:class lombok.javac.apt.LombokProcessor

Java构建已开始失败-编译时出现致命错误:Java.lang.IllegalAccessError:class lombok.javac.apt.LombokProcessor,java,amazon-ec2,bitbucket,Java,Amazon Ec2,Bitbucket,我们在EC2上有一台Java 11服务器,它刚开始构建时出现以下错误: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project showhow-server: Fatal error compiling: java.lang.IllegalAccessError: class lombok.javac.apt.

我们在EC2上有一台Java 11服务器,它刚开始构建时出现以下错误:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) 
on project showhow-server: Fatal error compiling: java.lang.IllegalAccessError: class lombok.javac.apt.LombokProcessor (in unnamed module @0x49d0e934) cannot access class 
com.sun.tools.javac.processing.JavacProcessingEnvironment (in module jdk.compiler) because module jdk.compiler 
does not export com.sun.tools.javac.processing to unnamed module @0x49d0e934 -> [Help 1]
[ERROR] 
构建来自BitBucket管道


知道它可能是什么吗?

使用maven,我成功地使用它构建了(更改了源和目标以匹配我的java版本):


org.apache.maven.plugins

我也使用java 11,并通过将其添加到POM插件部分修复了这个问题

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <source>${java.version}</source>
                <target>${java.version}</target>
                <fork>true</fork>
                <!-- this is to fix bitbucket pipeline build error due to Lombok processing -->
                <compilerArgs>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED</arg>
                </compilerArgs>
                <annotationProcessorPaths>
                    <path>
                        <groupId>org.projectlombok</groupId>
                        <artifactId>lombok</artifactId>
                        <version>${lombok.version}</version>
                    </path>
                </annotationProcessorPaths>
            </configuration>
        </plugin>

org.apache.maven.plugins
maven编译器插件
3.8.1
${java.version}
${java.version}
真的
-J--addopens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED
-J--addopens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED
-J--addopens=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED
-J--addopens=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED
-J--addopens=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED
-J--addopens=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED
-J--addopens=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED
-J--addopens=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED
-J--addopens=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED
-J--addopens=jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED
org.projectlombok
龙目
${lombok.version}

java.verion是11,lombok.version是1.18.18

将lombok依赖项升级到1.18.20

,使用java 11将lombok版本从1.18.16更改为1.18.20,这正好帮了我一把。谢谢
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <source>${java.version}</source>
                <target>${java.version}</target>
                <fork>true</fork>
                <!-- this is to fix bitbucket pipeline build error due to Lombok processing -->
                <compilerArgs>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED</arg>
                    <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED</arg>
                </compilerArgs>
                <annotationProcessorPaths>
                    <path>
                        <groupId>org.projectlombok</groupId>
                        <artifactId>lombok</artifactId>
                        <version>${lombok.version}</version>
                    </path>
                </annotationProcessorPaths>
            </configuration>
        </plugin>