Java 弹簧靴&x2B;角度4:自动重新编译前端
我正在用gradle开发一个Angular4+Spring Boot java web应用程序。我已按照中所述设置了gradle任务。我可以通过运行Java 弹簧靴&x2B;角度4:自动重新编译前端,java,spring,angular,spring-boot,Java,Spring,Angular,Spring Boot,我正在用gradle开发一个Angular4+Spring Boot java web应用程序。我已按照中所述设置了gradle任务。我可以通过运行/gradlew bootRun——java和typescript编译,然后网站编译,来启动整个web应用程序 在学习angular 4时,我注意到当通过nodejs启动服务器时,您可以编辑typescript文件和其他文件,前端会自动重新编译,甚至浏览器会自动刷新 我不知道如何在我的spring boot/gradle设置中获得相同的行为。我相信这
/gradlew bootRun
——java和typescript编译,然后网站编译,来启动整个web应用程序
在学习angular 4时,我注意到当通过nodejs启动服务器时,您可以编辑typescript文件和其他文件,前端会自动重新编译,甚至浏览器会自动刷新
我不知道如何在我的spring boot/gradle设置中获得相同的行为。我相信这就是buildClientWatch
和buildClientDev
任务的目的。安装程序将使buildClientDev
作为bootRun的依赖项运行,但我无法更改前端并提供新文件。也许是因为这些文件是从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库。 将其与客户端一起使用重新编译任务。有关更多信息,请参阅
IMO,最简单的方法是使用Spring Boot启动后端,使用ng serve启动前端,并将ng服务器配置为后端的代理:为什么您的答案被否决?这不是一个可行的解决方案吗?不知道。这是我向同事建议的解决方案。无论如何,我会亲自尝试并通知你