当我尝试使用带有build
标志的gradle运行-t
时:
./gradlew clean build -x test -t
我得到提示行:
等待更改任务的输入文件...(ctrl-d退出)
但是当我使用bootRun
命令进行尝试时,它无法正常工作/显示:
./gradlew clean bootRun -t
是否适用于Spring Boot? (我知道Spring dev tools plugin - 1.3尚未发布)
答案 0 :(得分:10)
andy-wilkinson在他的回答中是正确的:gradle bootRun
永远不会完成,因为某些应用程序无限期运行。它在issue in the grails project中有详细记载。
我找到了一种方法来强制bootRun从命令行重新加载应用程序。这里的关键项是gradle daemon和spring-boot-devtools包。
要让它重新加载,您需要打开2个终端。
gradle build --continuous
gradle build --continuous --quiet & 2>1 >/dev/null
在后台运行,但您会错过重要的构建警告/错误。 gradle --stop
停止观看。 gradle bootRun
答案 1 :(得分:6)
这取决于Spring Boot应用程序的性质。如果你的应用程序通常运行然后退出,那么连续构建将起作用。但是,如果您的应用程序通常无限期保持活动状态,例如因为它是一个处理HTTP请求的Web应用程序,那么它将无法正常工作。在后一种情况下,bootRun
任务永远不会完成,因此Gradle不知道是时候开始观察更改了。