问题描述
我在 IntelliJ IDEA Ultimate 2020.3 中工作。我有一个基于 Java maven 的项目,它具有包含多个子项目的根 POM 文件的层次结构。有一个名为 common 的子项目,其他子项目使用它作为它们的依赖项。
Root Project
|
|----A (Common as dependency)
|----B (Common as dependency)
|----Common
到目前为止一切都很好,IntelliJ 索引器识别所有依赖项,您可以在其他子项目中查找“用于”common 子项目的类。
出于必要(第 3 方版本依赖冲突,着色没有帮助),我不得不配置一个子项目(我们称之为 A)以直接编译 common 子项目,使用 build-helper-maven-plugin
,其中我使用 add-source
目标添加了 common 子项目源。自然地,我从子项目 A POM 文件中删除了 common 依赖项。事实上,IntelliJ 认识到了这一变化,并在项目资源管理器视图中将 common 子项目源文件夹标记为子项目 A 的源。
Root Project
|
|----A (Common as additional source folder)
|----B (Common as dependency)
|----Common
这有效并解决了我的依赖问题,但我注意到从那时起,对 common 子项目中任何类的“used in”搜索仅显示在 A 中的使用> 子项目而不是其他子项目。 Maven 编译自然有效,IntelliJ 本身也不会显示任何编译警告。我尝试重置 IntelliJ 的索引器缓存,尝试删除 IDEA 系统目录,但无济于事。我想我缺少索引器的某种配置,这可能有助于它正确识别项目结构,也许可以将其配置为忽略 POM 结构并仅索引所有内容?...
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)