繁体   English   中英

如何在 IntelliJ IDEA 14 中为当前项目工作配置注释处理?

[英]How to configure annotations processing in IntelliJ IDEA 14 for current project work?

该项目的结构是:

  • 父项目
    • 一个项目(Spring)在 pom.xml 中有项目 B 的依赖
    • B 项目(Spring MVC)在 pom.xml 中有项目 A 的依赖

在Tomcat 7中启动项目B后,出现错误:

错误:java:模块周期不支持注释处理。 请确保周期 [A,B] 中的所有模块都被排除在注释处理之外

我如何避免这个问题?

我使用 Java 8、Tomcat 7 和 Intellij Idea 14。

为了解决这类问题,需要使用 InteliJ-idea 中的分析模块依赖关系。

文件菜单 > 分析 > 模块依赖

这显示了所有具有循环依赖项并应首先解决的项目的列表。

此功能可帮助您找到问题。

编辑- 对于最新版本,它是分析 -> 分析模块依赖关系..

除了 Mikhails 的回答,这里是如何修复它

当您看到哪些模块具有循环依赖项时,右键单击您的项目并

Open Module Settings ->展开相应的模块组并选择模块-> Dependencies ->选择并删除它

不确定它是否是实际的解决方案,但我在将多模块Maven项目迁移到Idea 14时遇到了类似的问题。

  • junit 1.2.16

模块A.

  • junit 1.2.17

模块B.

  • junit 1.2.16
  • 模块A.

当我尝试从模块A运行单元测试时,它无法执行。完全从模块中删除junit为我解决了它。 不知道为什么,但也许你有类似的设置?

如果循环依赖错误,则打开模块设置并将其从不应该具有它的模块中删除。

如果依赖项正确,则取消选中File | Settings | Build, Execution, Deployment | Compiler | Annotation Processors中的Enable annotation processing框。 File | Settings | Build, Execution, Deployment | Compiler | Annotation Processors

在此处输入图片说明

进入 Settings->Build->Compiler->Annotation Processors 并禁用它解决了它。

允许测试-A 依赖于 B,即使 B 依赖于 A

我正在使用 IntelliJ2019.1

但是很遗憾它似乎没有考虑 maven 测试范围

为了解决这个对我有用的问题的替代方法(上面的答案没有)。

从您拥有的包/项目转到pom.xml 删除导致问题的标签。 您可以在控制台中找到问题的相关性。

希望能帮助到你。 :)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM