zoukankan      html  css  js  c++  java
  • Error:java: 程序包lombok不存在- IDEA+maven+lombok

    IDEA2020.1版编译项目时报lombok包不存在的错误

    解决方法:重新确认maven的setting.xml中LocalRepository指向的路径是否存在并可访问

    1. 主诉:

    • windows OS,jdk1.8,maven3.6.3,IDEA2020.1
    •   pom依赖项:
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>1.18.12</version>
                <scope>provided</scope>
        	  </dependency>
      
    • lombok plugins-0.3.0,正常安装
    • 在file>setings>build>compiler>Annotation processing中Enable annotation processing
    • 在代码编辑时,正常import lombok
    • 在External Libraries中能够正常看到lombok的jar包
      在这里插入图片描述
      在这里插入图片描述

    2. 症状:

    项目编译不通过,报Error:java: 程序包lombok不存在,尝试各大论坛的解决方案均失败
    java: 程序包lombok不存在

    3. 问题排查:

    项目使用了本地自行安装配置的maven3.6.3,非IDEA自带的版本,并在setting.xml中配置了localRepository(指向LocalWarehouse)和mirrors(指向阿里云)。而IDEA-2020.1版本却无法识别自行设置的localRepository,导致安装在maven本地仓库的jar依赖项在编译时无法被扫描到,出现包不存在的错误。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    4. 解决方法:

    将setting.xml内的localRepository项注释,使得idea使用自带的.m2仓库,即可完美解决该问题。
    在这里插入图片描述

    5. 问题重新定位

    经资深后端工程师指点后,发现该问题的根本原因是localRepository所配置的路径出错(误用了双正斜杠’//’)。在windows OS,正确的路径分割符是使用双反斜杠’\‘或单正斜杠’/’;在linux OS,则只能使用单正斜杠’/’。注:下图配置源自setting.xml文件。我使用的是自己安装的maven,故该xml文件在maven的安装路径下。
    若使用IDEA自带的maven,其路径一般为C:userAdmnistrator.m2setting.xml
    改成如图路径
    在localRepository路径配置正常的情况下,自行安装的Localwarehouse仓库和.m2Repository仓库都可以使用!

    6. 总结

    以后再次遇到类似故障时,应当冷静地分析,从问题的根源出发。如编译时找不到jar包,要排除该包是否在仓库中存在;仓库的引用路径是否有误;若仓库是在C盘中创建的,还要考虑文件权限问题。
    上述方法适用于maven仓库找不到软件包的错误。

  • 相关阅读:
    软件工程——股票利润
    软件工程——爬楼梯
    总结
    团队4
    团队答辩
    团队3
    软工2
    团队合作(1)
    软件工程第二次作业
    软件工程第一次作业(2)
  • 原文地址:https://www.cnblogs.com/litchi99/p/13504314.html
Copyright © 2011-2022 走看看