在Maven的install过程中编译器提示如“无法将类 XXXXX 中的构造器 XXXXXX 应用到给定类型”的错误。
如果代码没有报错,只是在编译阶段才报错,那基本可以确定是lombok问题。
我遇到这个问题是因为在将当前项目打包成Maven依赖时加入了如下插件:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<annotationProcessorPaths>
<!-- Spring Boot 的配置元数据生成器 -->
<path>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<version>${spring-boot.version}</version>
</path>
</annotationProcessorPaths>
<compilerArgs>
<arg>-parameters</arg>
</compilerArgs>
</configuration>
</plugin>
但该插件工作时,并不会主动加载已经添加到<dependencies>
依赖中的lombok依赖,需要主动在插件的annotationProcessorPaths
下添加lombok配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<annotationProcessorPaths>
<!-- Spring Boot 的配置元数据生成器 -->
<path>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<version>${spring-boot.version}</version>
</path>
<!-- Lombok 的注解处理器 -->
<path>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok-version}</version>
</path>
</annotationProcessorPaths>
<compilerArgs>
<arg>-parameters</arg>
</compilerArgs>
</configuration>
</plugin>
如果你不是因为该插件原因导致的,那也大概率是lombok插件相关的问题,可以尝试配置一下当前的开发软件相关配置,方向对了问题就好找了。