idea使用jdk11编译有lombok项目报错问题解决

返回
Author Avatar
钢翼
2021-12-23
编程
62

最近用idea使用jdk11编译项目A时报错

Failure executing javac,but could not parse the error:

发现报错信息里面有lombok的信息,看了项目A引用了下面的第三方包

<dependency>
		<groupId>com.github.binarywang</groupId>
		<artifactId>weixin-java-common</artifactId>
		<version>2.9.0</version>			 
</dependency>

而这个第三方包,直接引用了lombok,也没设置<scope>provided</scope>

    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
    </dependency>

那应该是第三方包版本比较古老,引用的lombok版本比较低不支持jdk11导致的。

逛了趟github,发现weixin-java-common的最新版本是4.2.0,也已经设置了<scope>provided</scope>了,也很疑惑项目A为啥要引用旧版本的包。

处理方法

打开idea的设置,Settings->Build,Execution,Deployment->Compiler

添加以下VM参数

Shared build process VM options: -Djps.track.ap.dependencies=false