【问题标题】:IntelliJ Idea: Maven compilation warning about supported annotation processor source version 'RELEASE_6' on Java 11IntelliJ Idea:关于 Java 11 上支持的注释处理器源版本“RELEASE_6”的 Maven 编译警告
【发布时间】:2020-11-05 23:44:02
【问题描述】:

在使用 Java 11 在 IntelliJ Idea 中智能执行 mvn clean install 时,我收到以下警告:

警告:java:注释处理器“net.java.dev.hickory.prism.internal.PrismGenerator”支持的源版本“RELEASE_6”低于-source '11'

如何解决它,它来自哪里?注意我使用:

  • 龙目岛版1.18.12
  • Mapstruct 版本1.3.1.Final

我还使用默认设置在 IDE 中启用了注释处理:

  • Build, Execution, Deployment -> Compiler -> Annotation processors -> 检查Enable annotation processing

【问题讨论】:

标签: java maven intellij-idea java-11 mapstruct


【解决方案1】:

原因可以在 cmets 部分找到,这是一个 IntelliJ Idea 的 bug IDEA-200481

GitHub 上的 MapStruct 问题 (1644) 包含一个全面的解释 1644#437463737

IDEA-200481。 IntelliJ 在编译时会获取提供的依赖项。

...skipped... 我们不能将hickory 依赖移动到maven 编译器的annotationProcessorPaths 部分,因为@GeneratePrisms 注释是依赖的一部分,所以我们将无法使用它们。如果您认为我们可以在我们这边做点什么,请重新打开此问题。

【讨论】:

  • 添加更多信息。我们在 1.4 中修复了这个问题(仍处于测试阶段)。我们不再使用 Hickory,我们使用我们自己的改编版(mapstruct gem 工具)
【解决方案2】:

在阅读this 的答案后,我通过在 intellij 设置中启用将 IDE 构建/运行操作委托给 Maven 解决了这个问题。

查看IDEA-200481了解更多详情。

【讨论】:

    猜你喜欢
    • 2014-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多