Maven 错误:模块的 Maven 项目配置不可用
Posted
技术标签:
【中文标题】Maven 错误:模块的 Maven 项目配置不可用【英文标题】:Maven Error : Maven Project Configuration for Module isn't available 【发布时间】:2015-11-07 21:40:27 【问题描述】:当我尝试编译我的代码时,我不断收到此错误。我的目录中有 pom.xml 文件,但我不确定那里是否有问题。我在互联网上只找到了一个与此相关的链接,这不是我的情况:Maven project configuration required for module
错误:Maven 资源编译器:模块“更新程序”所需的 Maven 项目配置不可用。仅当从 IDE 启动外部构建时,才支持编译 Maven 项目。
这是我的 pom 文件的内容:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.nothing.updater</groupId>
<artifactId>Updater</artifactId>
<version>1.0-SNAPSHOT</version>
<!--<dependencies>-->
<!--<dependency>-->
<!--<groupId>com.nothing.toolbox</groupId>-->
<!--<artifactId>Toolbox</artifactId>-->
<!--<version>1.1</version>-->
<!--</dependency>-->
<!--</dependencies>-->
</project>
我正在使用一个多模块项目。
【问题讨论】:
【参考方案1】:右键单击 pom.xml,然后单击“添加为 Maven 项目”。
【讨论】:
工作于 2018.2.1 这解决了我遇到的这个错误:Error:Maven Resources Compiler: Maven project configuration required for module '...' isn't available. Compilation of Maven projects is supported only if external build is started from an IDE.
在我的例子中它已经被添加为 Maven 项目。尝试“取消链接 Maven 项目”并遵循解决方案,但它没有用。谢谢你。【参考方案2】:
右键单击该模块,然后从弹出菜单中选择“制作模块”“项目模块名称”选项。将显示消息。但是现在去问题看看。这将清除并纠正此问题。
【讨论】:
在 2017.2.1 的一个相当复杂的 maven 项目中遇到了同样的问题。为什么会有帮助? 这只是解决了我从 2019.1.2 升级到 2019.2.1 时遇到的问题;所以无论发生什么,它仍然是一个问题。 在 IntelliJ 2019.3 中,我发现的菜单项是“构建模块 ”。 我在 IntelliJ 上,但找不到“制作模块”选项。谢谢你。【参考方案3】:在我的情况下,将 IJ 从 14.x 升级到 15.x 后出现问题,并在我发布 Build -> Rebuild Project 时消失了
【讨论】:
难以置信,我花了几天时间试图解决这个问题并尝试了一百万种方法,但最终你的解决方案对我有用!谢谢。有关信息,我正在使用 Intellij 2018.3、java 11(但在我的项目中仅使用版本 8 语言级别)、maven 3.6。更新:虽然这可行 - 发生了一些奇怪的事情 - 在我运行 Rebuild Project 然后运行我的“mvn clean”、“mvn validate”、“mvn compile”之后 - 我有时仍然会收到上述错误。 我认为这对我在2019.2.2 (Ultimate Edition)
for Mac 上有所帮助。
在 Ubuntu 上更新到 2019.3 后,我遇到了同样的问题。重建项目后,问题现在消失了
谢谢,这个简单的步骤也帮助了我在 Linux 的 2021.2.2(社区版)!
它不适合我。谢谢你。【参考方案4】:
我在 2019.3.4 下遇到此错误的问题与委托给 Maven 的构建有关。想法是让 Maven 先构建我的项目,而构建失败是因为我破坏了测试。我通过不允许 IDEA 委托给 Maven 来解决这个问题。在 Mac OS Catalina 上:Intellij -> 首选项 -> 构建、执行、部署 -> 构建工具 -> Runner 并取消选中 Delegate IDE Build/run actions to Maven
【讨论】:
谢谢。但它已经为我取消检查,所以没有工作。【参考方案5】:消息来自Line 43 in /org/jetbrains/jps/maven/compiler/MavenResourcesBuilder.java,所以我猜这不是 pom.xml 问题,而是 IntelliJ Idea 相关的。
如果您进一步研究代码,它会查找一个名为 maven/configuration.xml
的文件,据我所知,它会在某个临时目录中进行搜索。
也许您应该尝试尽可能干净地开始构建。
【讨论】:
谢谢你的回复,我明白了。我将尝试它,但有两个问题:1.我怎么知道它来自第 43 行和 2.我在哪里可以看到它需要 configuration.xml?谢谢! 对于您的问题: 1. 第 43 行读取context.processMessage(new CompilerMessage(BUILDER_NAME, BuildMessage.Kind.ERROR, "Maven project configuration required for module '" + target.getModule().getName() + "' isn't available. Compilation of Maven projects is supported only if external build is started from an IDE."));
,这几乎就是您收到的错误消息。 2. 当你进入JpsMavenExtensionService.getInstance().getMavenProjectConfiguration
时,你会发现。【参考方案6】:
快速解决方案(IntelliJ IDEA): 右键项目,选择Maven->Reimport
【讨论】:
【参考方案7】:就我而言,我不得不使用以下技巧:
在项目面板中右键模块名称
选择“打开模块设置”
在弹出的窗口中,点击Dependencies
选择java版本1.8.0_151
【讨论】:
我在 intelliJ 上找不到“打开模块设置”选项。【参考方案8】:Intellij Idea 版本升级(2016.3 到 2017.1)后出现同样的错误:
错误:Maven 资源编译器:需要 Maven 项目配置 对于模块 'MODULE_NAKE' 不可用。 Maven的编译 仅当从 IDE 启动外部构建时才支持项目。
但我的解决方案是另一个。不知何故,我认为 Intellij 丢失了我项目中使用的 maven 版本。我使用的是 maven 2.2.1,但 Intellij 正在尝试使用 maven 3.x。
所以,我的解决方案是在以下位置调整此配置:
File > Settings > Build, Execution, Deployment > Build Tools > Maven
并将 maven 版本设置为 2.2.1。
【讨论】:
【参考方案9】:我在 Intellij Idea 版本升级后遇到了这个问题。解决方法是等待它完成索引。然后我认为它下载了一些它需要的东西。
让我觉得这个线程上关于 IJ 版本升级的其他答案可能也只需要等待 - 当他们完成尝试一些事情时,问题本身就解决了。
【讨论】:
【参考方案10】:在我的情况下,这是由 IntelliJ 的错误配置引起的。很久以前,我一直在试验Maven Projects
视图中的Lifecycle
选项,并在子模块中留下了几个阶段,检查为Execute Before Build
。
因为我完全忘记了检查这些内容,所以我花了很长时间才理解与Problems
视图中的错误消息的联系。在取消选中受影响阶段的Execute Before Build
开关后,一切都恢复正常,尤其是运行单元测试变得更快。
【讨论】:
【参考方案11】:修改.idea/compiler.xml,添加配置(模块名需要自己改):
【讨论】:
【参考方案12】:就我而言,我收到此错误消息,因为我在 IntelliJ 中的 Maven 配置已损坏。我在Preferences:Build,Execution,Deployment->Build Tools->Maven->Importing
处向VM options for importer
输入了无效选项。
删除这些选项后,IntelliJ 再次开始正常运行。
【讨论】:
【参考方案13】:我选择了对我有帮助的捆绑的 maven 安装。
这也可能与使用符号链接来引用 maven 安装有关..
原来我使用的 IntelliJ 版本 (2018.3) 无法使用 apache-maven-3.6.2 导入 maven 项目
【讨论】:
【参考方案14】:就我而言,我使缓存无效并重新启动了 IDE。它起作用了,但不知道为什么。
【讨论】:
【参考方案15】:我正在使用带有 WSL2 和 Windows10 的 IDEA。 当IDEA自动将WSL2中的JDK设置为项目JDK时出现了我的问题。 将我的JDK设置回Windows JDK后,错误消失了。
【讨论】:
【参考方案16】:在我的情况下,我已经全部配置为在每次文件更改后使用 devtools 执行热重载:
-
文件 -> 设置 -> 构建、执行、部署 -> 编译器 -> 启用“自动构建项目”;
文件 -> 设置 -> 高级设置 -> 即使开发的应用程序当前正在运行,也允许自动启动。
Auto-build 选项卡中的 maven 相关错误正在显示,并且仅在我删除根目录中的 .idea 文件夹后才消失,再次打开项目,在没有 maven config 的情况下构建项目(构建为 Ant 项目),并且重新配置所有。 重置后错误消失,maven build 执行没有错误。
【讨论】:
【参考方案17】:我被这个问题困扰了一下午,***中的解决方案对我没有用。但是我只是偶然解决了这个问题,我不知道它是如何工作的,但是它很有效。如果你有同样的项目结构。 project structure
你可以试试这个 try this button
您会发现所有子项目都构建成功。然后就可以正常运行所有项目了。
【讨论】:
以上是关于Maven 错误:模块的 Maven 项目配置不可用的主要内容,如果未能解决你的问题,请参考以下文章
使用Maven编译项目遇到——“maven编码gbk的不可映射字符”解决办法
普歌-idea关于二级maven项目模块配置无法被三级maven项目模块使用问题