IntelliJ IDEA 不能识别 Maven 依赖项中指定的类

我在 IntelliJ IDEA 有一个项目,它是与 Maven 一起创建的。然后,我在 Pom.xml 文件中指定了一组依赖项和外部存储库。

如果我使用 mvn install,该项目在命令行上构建良好。当我打开 IDE 中的任何代码文件时,虽然它说 Maven 依赖关系处理的所有类都不能被识别——如果我从未将所需的 JAR 添加到构建路径中,那么对于普通项目来说也是如此。

我知道在我的 Eclipse Maven 项目(而不是 IntelliJ)中,它通常会在左边显示一个额外的目录,上面写着“ Maven 依赖项”,并列出通过 Maven 拉入的 JAR。我没看出来。我做错了什么?


我的屏幕是这样的:

IDE Image

126294 次浏览

由于某种原因,重新进口并没有奏效:

Http://www.jetbrains.com/idea/webhelp/maven-importing.html

我设置了自动导入,然后问题就消失了; 希望它能帮到其他人。感谢大家的建议:)。

我也遇到过类似的问题。对我来说,结果是我导入项目的方式不正确。我一直在做的事情

import project
<navigate to existing project and click top level directory>
follow the wizard

解决我 Maven 问题的方法是

import project
<navigate to existing project and click the pom.xml
follow the wizard

在一台新电脑上安装了 IntelliJ IDEA 之后,我发现自己也有同样的问题。

我必须更新远程 maven 存储库

enter image description here

本地和远程回购都需要更新。远程遥控器在这之前从没更新过。重新启动后,一切正常。您可能需要重新导入项目。

在将 Intellij 升级到1.4.15之后,这种情况也发生在我身上。我尝试用相同的结果重新导入整个项目,但是启用 Maven Auto Import 做到了这一点。

你可以去:

文件 > 设置 > 构建、执行、部署 > 构建工具 > Maven

并检查 pom.xml 是否不在“ Ignored Files”列表中。

通过 Intellij 重新导入和/或更新存储库对我来说并没有什么效果。

相反,我必须删除完整的 ~/.m2/repository目录,让 maven 自己解决所有问题。之后 Maven -> Reimport完成了它。

似乎有几个合理的理由可以解释为什么 intelliJ 会忽略一个 pom 文件。 以前的答案在我的案例中都不起作用,所以以下是起作用的,以防其他人遇到这个问题:

在本例中,模块3被 IntelliJ 完全忽略。该目录中的 pom.xml 甚至没有被视为 maven pom。

我的项目结构是这样的:

myProject
module1
module2
module3

但是,我的(简化的) pom 结构是这样的:

<project>
<modelVersion>4.0.0</modelVersion>
<groupId>devs</groupId>
<artifactId>myProject</artifactId>
<version>0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>myProject</name>


<modules>
<module>module1</module>
<module>module2</module>
<modules>


<profiles>
<profile>
<id>CompleteBuildProfile</id>
<modules>
<module>module3</module>
</modules>
</profile>
</profiles>
</project>

为了解决这个问题,我修改了根 <modules>元素以临时添加模块3。

    <modules>
<module>module1</module>
<module>module2</module>
<module>module3</module>
<modules>

接下来重新导入根 pom,IntelliJ 将添加模块。 完成之后,把彩球还原。IntelliJ 将询问您是否也想从项目结构中删除 module3。按 No

完成。模块3工作了,我可以再次从 IntelliJ 运行我的集成测试: D

这个问题是由于我选择了第一次启动 IntelliJ 时要导入的项目目录而不是项目的 pom.xml文件导致的。

关闭问题项目,然后再次执行 Import 过程,但是选择 pom.xml会导致 IDE 中的项目完全工作。

在我的例子中,问题在于项目是在 maven2中,而 intelligence 是为 maven3配置的。在设置中切换到 maven2解决了这个问题

对我来说,问题似乎是与 maven helper 插件(https://plugins.jetbrains.com/plugin/7179?pr=idea)的冲突。

我关了它,它又能工作了:)

去吧 文件 > 设置 > 构建、执行、部署 > 构建工具 > Maven 并检查 Maven 主目录。这应该是用于命令行的相同的 Maven 安装

也许对其他像我一样被困住的人有用。 所有建议的补救措施都不起作用。事实上,在我解决了 Maven 的安装位置这个主要问题之前还没有。

在我的情况下,我没有使用标准的位置。在 maven 设置(设置/Maven/Maven 主存储库)中更改该位置就可以解决这个问题。

我的两分钱。

对我来说,技巧就是在文件 > 项目设置 > 模块 > 依赖项中添加依赖项。

对于我的文件 > > 无效缓存/重新启动 > > IntelliJ 中的无效和重新启动

由于一些我不理解的原因,在我的例子中,我需要在 Build,Exections,Deployment > Build Tools > Maven 中打开设置“ Always update Snapshot”。

这使得 IntelliJ 重新下载依赖项并使其工作。

缓存正在引起问题! 请确保执行以下操作:

在终端中,转到 project/module:

mvn clean install

在你的智力中:

  1. 文件 > 无效缓存 > 无效

  2. 右键单击 project/module > Maven > Reimport

只需删除项目的.idea 文件夹并在 IntelliJ 中重新导入项目。

如果您在 pom.xml 中有任何特定于您的组织的依赖项,那么您需要更新您的项目的 seting.xml 路径,该路径默认设置为 Ubuntu:/home/user/中的用户目录。M2/setings.xml-> (将其更改为 apache-maven conf 路径)

转到-> intellij 设置-> 构建,执行,部署-> 构建工具-> Maven-> 用户设置文件

Update Setting.xml file Intellij

对于我的情况,我应该检查工作脱机

转到文件 > 设置 > 构建、执行、部署 > 构建工具 > Maven 然后检查脱机工作

重新启动,无效缓存,外部建筑,没有为我工作。

只有 Reimport 最终起作用了。看在其他人的份上,把它当作答案:

Right click the project > Maven > Reimport

几天前遇到了同样的问题。它可能不相关,因为我的问题是更具体的春季启动,但是因为我正在与它斗争,并尝试在这篇文章的每一个解决方案,我将分享我的经验。

我试图做的是将我的一个 Spring 启动应用程序作为一个 maven 依赖项添加到另一个项目中。依赖关系得到了解决,但我无法访问我的类。

当没有声明打包时,Maven 假定默认打包是 JAR。 SpringBootMavenPlugin 生成的 JAR 覆盖 Maven 生成的默认 JAR。

解决办法是:

我们找到的解决方案是生成另一个 JAR,它将作为从其他项目导入的依赖项使用。

完整的 文章帮助我解决了我的问题。

希望能帮到别人。

在将我的 maven 项目重构为不同的模块之后,我遇到了类似的问题。单独重新导入通常不起作用,但是我发现删除。Iml 文件,然后重新导入通常可以解决这个问题。

Idea 无法使用 maven 下载所有相关的 jar 包,请尝试以下操作:

Mvn-U idea: idea

然后从 maven 存储库下载所有依赖的 jar 包

右键单击 pom.xml-> Add as Maven project-> Reimport

Maven import

当导入新项目时:

1. 确定项目中的所有模块为 maven 模块: 文件——-> 新建项目设置—— > 构建执行部署—— > 构建工具—— > 专家——-> 导入——-> 启用“搜索项目递归”

选项1: 右键单击主项目文件夹 = > Add Framework Support = > Check Maven 选项

选项2: 右键单击 pom.xml 文件并单击“ Add as a maven project”

这发生在我从 Java 8升级到11和 Spring 版本时。Maven 部分中的所有依赖项都消失了,就好像不存在 pom 文件一样。能够通过做

mvn clean

它向我展示了其中一个依赖项缺少版本标记,并且它需要一个版本标记。

<dependency>
<groupId>com.googlecode.json-simple</groupId>
<artifactId>json-simple</artifactId>
</dependency>

在将 version 添加到上面的依赖项之后,它开始在 maven 部分下显示所有的依赖项。

在我的例子中,我的 Maven 主路径指向 Bundled Maven 3,而不是我的。找到 m2文件夹,通过文件 > 设置 > 构建、执行和部署 > Maven > Maven 主路径并添加 C:/Program Files/apache-Maven-3.5

对我有用:

mvn -U idea:idea

因为 mvn -U更新了依赖项,所以检查 mvn -U是做什么的: https://stackoverflow.com/a/26224957/6150881

在此之前,我尝试过以下步骤,但这些都没有帮助:-

  1. 删除 .idea.iml文件
  2. 使缓存无效并重新启动
  3. 美芬-> 重新进口。

当我错误地将 IntelliJ 设置为省电模式时,这种情况发生在我身上。省电模式显示电池图标与半空充电。关闭它就解决了问题。

我尝试了很多东西,最后通过项目设置 > 库部分添加了依赖项。如果没有其他的工作,它的伎俩。