有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java IntelliJ不重新编译/构建maven项目

我在使用IntelliJ进行Spring开发时遇到了问题。首先,IntelliJbuild命令工作得很好,并拾取我对源代码所做的更改。在某种程度上,这会停止工作,我只能通过maven编译我的源代码,因为buildrebuild project命令似乎不再起作用

我很困惑,因为它在一开始就按预期工作,但后来在某个点停止工作

重新创建的步骤

  • 使用Spring初始值设定项创建新的Spring项目:

    curl https://start.spring.io/starter.zip -d type=maven-project -d javaVersion=11 -o demo.zip && unzip demo.zip

  • 从该文件夹中的命令行启动IntelliJ,这将自动导入项目:idea64 .

  • 在主类中编写日志消息,并使用Run->Run 'DemoApplication'运行项目。这会将源代码编译到target文件夹并启动项目。您应该会看到日志消息

  • 更改日志消息,再次运行,更改应该可见(到目前为止还不错

  • 现在通过maven命令mvn compile重新编译源代码并重新启动IntelliJ

  • 从现在起,在IntelliJ中运行buildrebuild project将不会获取我对任何源文件所做的任何更改。事实上,这两个命令似乎都没有任何作用。为了正确编译我的源代码,我必须通过maven进行编译

我尝试了一些方法来克服这个问题,但没有成功:

  • 无效缓存/重新启动
  • 选中project settings中的Project Compiler Output并将其设置为<project-folder>/target
  • 检查project settings/modules中的output pathtest output path并将其放入上述路径
  • 使用Reimport All Maven Projects
  • 已删除项目文件夹中的.idea文件夹。这似乎是可行的,但非常不方便,而且肯定不是有意的行为。如果我重新创建上面详述的步骤,它也会再次中断

是否有人遇到类似问题和/或有解决方案


共 (1) 个答案

  1. # 1 楼答案

    因此,对于遇到上述问题的人:

    显然,删除.idea文件夹并重新启动IntelliJ确实起到了作用。重新启动时会重新创建文件夹,之后我可以在IntelliJ中使用runbuildrebuild project进行编译,并通过maven目标(mvn compilemvn testmvn surefire:test,…)进行编译。这种情况通过重新启动IntelliJ来持续,这样我就不必每次打开项目时都重复这种情况

    我仍然不知道为什么会发生这种行为,但这是一个解决方案,我很乐意与之合作,只要我只需要时不时地为一个项目这样做