1、前言
有时候使用IDEA 编写代码的时候,刚打开发现class文件右侧出现了一道红线,这个时候非常疑惑,明明之前还运行好好的,怎么现在就突然报错了?
2、情况分析
出现以上的状况肯定是代码引入出了问题。
可能是JAR包引入出了问题。
场景1:引入的第三方JAR包
场景2:引入的是项目的其他模块,例如 common-api 等。
3、尝试方案
我这里出现的问题是项目其他模块。
3.1、尝试方案1:Maven reimport
由于引入是编译后的文件,首先对其他模块进行重新编译,例如common-api 进行 mvn clean install 。
再对业务模块进行maven reimport 重新引入依赖JAR包。
执行Maven ReProject功能,
或者执行Maven Helper Maven ReImport:
额 … 并没有解决问题,但是我想其他同学应用这种方案应该可以解决一部分场景。
3.1、尝试方案2:修改原class文件
因为IDEA 会对更改后的文件重新扫描处理,基于这种原因,对引入的Constant 类,我这里进行了重命名
修改成Constant2:
这样,rename之后,所有引入的地方就会正常引入。
这是由于IDEA修改之后会检查全文,之前无法引入的问题就解决了。
3.3、第三方JAR引入问题
当我们刚从代码仓库下载的时候也会存在无法引入JAR包的情况。这种也有几种方法尝试。
具体可以参考我之前的文章Maven导入jar包失败问题解决
4、总结
我这里是提供无法引入的一种想法,如果对你有帮助就好。
我这里的主要思路还是从Java 编译方面下手,而引入的依赖项目假如没有进行编译,也就是IDEA下无法看到target 文件,也就无法引入成功。