首页 > 解决方案 > IntelliJ Idea:如何(默认情况下)从编译中排除一个已损坏且不属于 maven 构建的模块?

问题描述

我有一个由多个模块组成的项目(在 Java 11 中)。<modules>并且从构建中排除了一个模块,因此在标签中的模块列表中将其注释掉pom.xml. 原因是,它有点损坏并且(尚未)编译。这将在将来修复。事实上,当我运行 maven 构建时,构建运行良好,“损坏”模型不参与构建。但是,当我想使用 IntelliJ Idea(版本 2018.1.5。社区)中的“构建项目”按钮编译更改时,它也想编译损坏的模块并崩溃。到目前为止,我的解决方法只是将此模块添加到 Settings -> Build, Execution, Deployment -> Compiler -> Excludes 下的排除列表中。这可行,但其他同事说,对他们来说,即使没有这种解决方法,它也可以工作,所以对他们来说,编译不会在没有任何额外步骤的情况下触及这个模块。进入这些课程时,他们的机器上没有任何红色。现在我需要弄清楚,可能是什么原因,为什么对我来说它只适用于这个自定义添加模块排除?我已经尝试“重新导入所有 Maven 项目”,但没有帮助。是否有任何 IDE 设置负责不编译此类项目?有任何想法吗?

标签: javamavenintellij-idea

解决方案


我找到了原因 :) 显然 IntelliJ Idea Professional 会自动忽略此类模块(在 pom.xml 中已注释掉)并且“构建项目”不会编译它们。但是在社区版(我正在使用)中,当我创建项目时,会出现一个窗口,标题为“导入 maven 项目”。在那里,我只需要关闭带有“损坏”模块的复选框,这会导致相同的结果:)


推荐阅读