您需要按照文档中所述配置项目:
http://docs.spring.io/spring-boot/docs/current-
SNAPSHOT/reference/htmlsingle/#howto-reload-springloaded-gradle-and-intellij-
idea
之后,您必须配置IDE以在build / classes /
main中输出编译的类(使用Idea插件,您可以按照上述链接中的配置配置outputDir,然后调用
gradle idea以完成此操作)。
然后,如果您启动任务(run / bootRun)或使用调试模式从IDE的主类运行,则在 编译 类时,热代码重载应该可以工作。
这里的问题是,与Eclipse不同,IntelliJ在保存类时不会自动编译一个类(即使将编译器配置为“在保存时构建”,在运行/调试时也不会这样做)。
如果spring boot提供了一个配置选项来监视您的源代码文件并在它们更改时重新编译它们,那将是理想的-
这就是Grails所做的。但是我认为这样的想法尚不存在,甚至可能无法将它与gradle结合使用,而gradle是负责管理类路径和此类事情的负责人。
据我所知,有两种选择:
- 您记得要编译所有编辑内容(如先前StackOverflow链接中所建议的那样,添加一个更简单的“编译”快捷方式可能会有所帮助)。
- 您放置了一些文件系统监视器(例如Linux的inotify-tools,在Mac OS X上启动的示例),当在任何源代码文件中检测到更改时,它们将调用gradle compileJava / compileGroovy。
首先是乏味的,其次是缓慢的:)。实际上,还有另一种选择:更改IDE :-D(或安装EclipseMode IntelliJ插件)。



