起因是换了一个电脑,重新从服务器上拉了一个项目。项目是由maven构建的,在控制台中使用mvn命令编译项目时,没有任何问题,编译成功。如下图:
可是idea里面的源码,却标红了,如下:
错误信息就是:
Cannot resolve method 'setKeyTool' in 'GenerateKeyPairMojo'
去GenerateKeyPairMojo的源码中看有该方法的定义,如下图
代码中有定义,且使用的是lombok的方式。这就奇怪了,maven里面也引入了lombok的包,mvn命令编译也能成功,到底是哪里出问题了呢?
此刻,我无意中瞥见,idea的右下角弹出如下的提示框:
这个提示是建议安装lombok插件,之前也弹出了这个提示,我就顺手给关了。既然是建议嘛,那理论上关了也应无妨才对。抱着试试的心态,点击了Enable plugin按钮,然后它会跳转到安装plugin的界面,将其安装完成。回到编辑界面,神奇的事情发生了,源码上的标红的代码都正常了。
哎,看来就是没装lombok插件的原因,不过我想吐槽一句,既然在编辑器上对源码编译有影响,那你就别写成建议了嘛,容易被误导,这不害得我瞎折腾半天。。。