命令行 mvn 编译,但不是 IntelliJ

2022-09-04 20:17:42

我在IntelliJ中编译Maven项目时遇到问题。

  • 如果我从命令行运行 = 成功mvn clean install
  • 如果我点击IntellJ中的“重新导入所有Maven项目”图标= SUCCESS
  • 如果我单击 IntelliJ 中的“为所有项目生成源并更新文件夹”图标 = SUCCESS
  • 如果我单击“Maven 项目”面板中的“安装”生命周期 = 成功
  • 在Maven“安装”之后,我甚至可以毫无问题地运行应用程序,并且我可以看到我最新的源代码更改。

因此,我不认为项目本身有什么问题。但

  • IntelliJ显示缺少许多方法和字段(红色突出显示)
  • 制作模块 ...失败
  • 编译模块 ...失败
  • 从 IntelliJ 运行的所有单元测试都失败,并显示“java:找不到符号”错误,但从命令行通过

我有

  • 已多次重新启动 IDE
  • 单击文件 ->使缓存无效/重新启动...
  • 单击文件 -> 项目结构... -> 问题 = 空面板(我假设这意味着没有问题)
  • 单击文件 -> 设置... -> Maven = Maven 设置正确

我还可以尝试使IntelliJ足够智能以编译项目?


答案 1

如果命令行使用与 IntelliJ 不同的 mvn 版本,则可能会发生这种情况。确保 Intellij 使用的是命令行正在使用的相同 maven 可执行文件。第一种类型:“哪个 mvn”,找出命令行正在使用的 mvn 可执行文件。然后通过转到以下方法使 IntelliJ 使用相同的版本:Intellij => 首选项 =>构建、执行和部署 =>构建工具 => Maven => Maven Home Directory。IntelliJ 2017.1 中的 Mvn 设置


答案 2

刚刚遇到了这个问题。对我有用的是关闭项目并删除 .idea 文件夹。

重新打开项目,然后再次将其设置为 maven 项目...

在那之后一切都很好。


推荐