java IntelliJ不重新编译/构建maven项目
我在使用IntelliJ进行Spring开发时遇到了问题。首先,IntelliJbuild
命令工作得很好,并拾取我对源代码所做的更改。在某种程度上,这会停止工作,我只能通过maven编译我的源代码,因为build
或rebuild 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中运行
build
或rebuild project
将不会获取我对任何源文件所做的任何更改。事实上,这两个命令似乎都没有任何作用。为了正确编译我的源代码,我必须通过maven进行编译
我尝试了一些方法来克服这个问题,但没有成功:
- 无效缓存/重新启动
- 选中
project settings
中的Project Compiler Output
并将其设置为<project-folder>/target
- 检查
project settings/modules
中的output path
和test output path
并将其放入上述路径 - 使用
Reimport All Maven Projects
- 已删除项目文件夹中的
.idea
文件夹。这似乎是可行的,但非常不方便,而且肯定不是有意的行为。如果我重新创建上面详述的步骤,它也会再次中断李>
是否有人遇到类似问题和/或有解决方案
# 1 楼答案
因此,对于遇到上述问题的人:
显然,删除
.idea
文件夹并重新启动IntelliJ确实起到了作用。重新启动时会重新创建文件夹,之后我可以在IntelliJ中使用run
、build
或rebuild project
进行编译,并通过maven目标(mvn compile
、mvn test
、mvn surefire:test
,…)进行编译。这种情况通过重新启动IntelliJ来持续,这样我就不必每次打开项目时都重复这种情况我仍然不知道为什么会发生这种行为,但这是一个解决方案,我很乐意与之合作,只要我只需要时不时地为一个项目这样做