IntelliJ只编译一次文件

时间:2018-06-11 09:01:12

标签: java maven intellij-idea

IntelliJ(Ultimate 2018.1)没有正确构建我的项目。该项目使用Maven,似乎没有任何问题(所有的库都在那里)。问题如下:

每次启动IntelliJ时,我都可以完成一次所有更改。我可以更改文件的内容,这些更改将包含在构建中。但是,构建工具会忽略第一次构建后我所做的每一项更改。因此,每次我构建项目(ctrl + f9)之后,我都会得到“所有文件都是最新的”并且没有编译任何内容。 (如果我在应用程序服务器上运行应用程序并尝试热插拔,则构建说“已加载的类是最新的......”)

只有重新启动IDE才能重建项目。

编辑:正如我刚刚发现的那样,重新启动IDE并不是唯一可以再次进行构建的可能性。在无法编译的状态下,我更改了编译器设置中的设置。在那之后,我能够再次建造。但只有一次。然后我改变了设置,我可以再次构建。在IDE中看起来像奇怪的东西。的 /修改

Edit2:奇怪的是,类的显式编译(ctrl + shift + f9)正常工作。所以问题围绕着整个项目的编译。虽然这使IntelliJ再次可用,但是对于多个已更改的文件却很容易出错...... / Edit2

项目的一些注释和配置:

  • 构建产生.war
  • 它部署在一个野生蝇(在这个周期中没有启动过一次,所以这不应该是问题的根源)
  • 以前在Eclipse中开发的完全相同的项目,其中构建和Hot-Swap完美地工作(并且当我再次尝试Eclipse时仍然这样做)
  • Maven配置: Maven configuration
  • 编译器配置: Compiler configuration

2 个答案:

答案 0 :(得分:0)

使用Intellij版本检查。因为我正在使用1.4社区版,对我来说它正常运行。

即使我在构建First Time后更新了几个依赖项,它也会自动重建。 因此,为了了解您可以做什么,只需检查Intellij更新或更改默认目录并重建它。

答案 1 :(得分:0)

" Build Project" command是IntelliJ的源代码发现。很久以前,我们选择将我们的源放在一个名为" .git"的文件夹中。 (不是存储库中的文件夹),因此IntelliJ在发现该目录中的代码时遇到了问题。原因是Eclipse将旧存储库克隆到.git文件夹中。该目录看起来像这样: C:\ dev \ .git \ workspace,该文件夹内是另一个.git文件夹(来自存储库)。  所以,答案是:

不要将您的git存储库放在名为" .git"的文件夹中。或IntelliJ不会编译它(除非你只编译类明智)。