因此,我正在尝试使用netbeans进行热部署以使用我的maven项目 . 我有两个战争套餐 . 一个我称之为“网络”,另一个我称之为“自定义网络” . 我在“web”上覆盖(使用maven overlay插件)“custom-web” . 我有几个“自定义网络”项目,每个客户一个 . 因此,maven叠加层非常适合我的需求 .
问题是我真的,真的想在两个项目上得到类和静态文件(.js,.css)的热部署 . 但是热部署仅适用于“自定义Web”项目,如果我在“web”上修改类或静态文件,则更改不会反映在服务器上,除非我手动重建“web”并重新部署整个申请可能需要3到5分钟,严重阻碍了我的发展 .
我在Netbeans中使用“部署保存”选项,并在调试模式下使用“应用代码更改” . 两者都不适用于“web”文件/类 .
我正在寻找解决方案 . 我的自定义Web项目主要有静态文件,但它也可以有类 . 它不需要使用叠加,但我无法找出任何其他方法来正确添加两个项目而不使用叠加 .
2 回答
不确定这是否是一个选项,但在这种情况下使用Jetty非常有用 . 使用
jetty:run
目标,您可以将Jetty指向要查看的源目录(跨项目),Jetty将始终从那里提供文件 .在您的情况下,您可以将Jetty的
scanTargets
指向您的源目录,Jetty将从那里提供文件 .有关配置选项和示例,请参见http://www.eclipse.org/jetty/documentation/current/jetty-maven-plugin.html#jetty-run-goal .
Maven配置文件(http://maven.apache.org/guides/introduction/introduction-to-profiles.html)可能是一种解决方案 . 您可以使用具有开发配置和"deploy on save"内容的"web"项目创建"dev" .
在netbeans中,您可以使用配置文件映射配置:http://wiki.netbeans.org/MavenBestPractices#Configurations
最后,使用自定义项目和CI服务器的覆盖选项 .