[英]Spring Boot + Angular 4 : Automatically recompile frontend
我正在使用gradle开发Angular4 + Spring Boot Java Web应用程序。 我已经按照此链接中所述设置了gradle任务。 我可以通过运行./gradlew bootRun
启动整个Web应用程序-Java和./gradlew bootRun
编译,然后网站进行编译。
在学习角度4时,我注意到通过nodejs启动服务器时,您可以编辑打字稿文件和其他文件,并且前端会自动重新编译,甚至浏览器也会刷新自身。
我不确定如何在我的spring boot / gradle设置中获得相同的行为。 我相信这是buildClientWatch
和buildClientDev
任务的目的。 设置是让buildClientDev
作为buildClientDev
的依赖buildClientDev
运行,但是我无法更改前端并提供新文件。 也许是因为文件被复制并从src/main/resources/static
,老实说,我不确定这些文件为什么要去那里。 为什么不让他们进入webapp
文件夹?
我还尝试在单独的终端中手动运行buildClientWatch
,但这似乎并没有执行任何操作,尽管它确实可以打印出并标识出文件正在更改。
这是一个包含构建的示例项目 (请注意分支)。
task buildClientDev(type: NpmTask, dependsOn: 'npmInstall')
{
group = 'build'
description = 'Compile client side folder for development'
args = ['run','buildDev']
}
task buildClient(type:NpmTask, dependsOn:'npmInstall')
{
group = 'build'
description = "Compile client side folder for production"
args = ['run','build']
}
task buildClientWatch(type: NpmTask, dependsOn: 'npmInstall')
{
group = 'application'
description = "Build and watches the client side assets for rebuilding"
args = ['run','buildWatch']
}
bootRun.dependsOn(buildClientDev)
jar.dependsOn(buildClient)
请尝试使用spring boot devtools库。 与客户端重新编译任务一起使用它。有关更多信息,请参阅https://spring.io/blog/2015/06/17/devtools-in-spring-boot-1-3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.