我在当地运行maven,这太棒了!我现在唯一的问题是我有一个沉重的堆栈,我有这些Massive WAR文件。关于使用Maven作为工具将本地依赖项与服务器上运行的应用程序同步,是否有一种好的方法或最佳实践?
例如,我可以以某种方式创建一个上传POM的目标,并告诉Maven在服务器端重建吗?我们双方都在运行linux。 Jetty本地和远程Tomcat。
我确信阿帕奇家伙想到了这一点......你的想法非常感谢......
答案 0 :(得分:2)
您可以查看的一个工具是cargo,它可以获取您构建的生成工件并将其安装到远程服务器实例。货物可以集成到您的maven构建中。
但是,如果您有多个开发人员并且只想将最新版本的存储库中的任何内容部署到服务器,我建议您至少调查一个持续集成服务器并设置手动或夜间工作为您部署。持续集成服务器(例如Jenkins)可以:
只是一些想法。我还强烈推荐Nexus作为工件库。由于Jenkins能够将您的构建作为Maven构建运行,因此您可以将Jenkins配置为运行部署目标,并使用已部署工件服务器(Nexus位置)的位置配置maven,以便将构建推送到。
答案 1 :(得分:0)
我认为正确的方法是将生成的战争(如果每个服务器配置需要一个)安装到存储库(不是SVN,像Nexus这样的Maven存储库)。有了它,您可以设置简单的脚本或maven配置,以在测试或生产服务器上部署工件,而无需在服务器上重建它们。