• 程序包lombok不存在,纠正网上错误答案


    环境

    Java:1.8+
    idea:2021.1.2

    前言

    今天对一个新项目打包时,又报了这个错误:程序包lombok不存在;可是idea相关的配置检查了下是没有问题的。
    网上百度查了一会,发现网上的答案错的有点离谱,如下:

    在这里插入图片描述

    我的的情况是,idea配置没有问题,网上错误的解决的办法要你勾选 maven -> Runner -> Delegate IDE build/run actions to Maven,千万别这么做。这样会导致main都是走mvn,或者说:勾选后,idea的所有的行为都用mvn执行。这肯定不行。

    解决办法

    我们要知道项目里引入lombok,就那么几步;

    1. 项目root中pom.xml引入lombok插件;
    <dependencyManagement>
        <dependencies>
    		<dependency>
    		    <groupId>org.projectlombok</groupId>
    		    <artifactId>lombok</artifactId>
    		    <version>1.18.4</version>
    		</dependency>
        </dependencies>
    </dependencyManagement>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    1. 接着到具体module中再引入,比如util module
    <dependencies>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
    </dependencies>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    1. idea 勾选 Enable annotation processing

    在这里插入图片描述

    正常情况,这么几个步骤是没有问题的。

    但是,如果你要打包的module是项目众多模块中的一个,那么就需要注意了:单独打包的那个module,一定要确保,引入了lombok。拿我上面的例子说,我上面lombok具体引入是的util module,但是打包是facade module,虽然facade module 依赖 util module,但是因为我们是要对facade module单独打包,所以还需要在facade module中再次引入lombok依赖。这样问题就解决了。

  • 相关阅读:
    温度对免疫代谢调节和癌症进展的影响
    JS清除字符串中的空格
    HashMap略解
    【Linux】Linux安装卸载JDK
    Vue 之 解决v-html生成的元素不能触发@click等vue事件和CSS样式不生效的方法
    USACO 2020 December Contest, Silver
    定日镜系统风致振动特性检测系统研究
    数字信号处理MATLAB作业
    Nuxt.js 深入浅出:目录结构与文件组织详解
    EasyRule源码:EasyRule框架源码分析
  • 原文地址:https://blog.csdn.net/u013066244/article/details/126580699