我知道maven战争叠加,但他们认为原始战争文件是一个maven项目。
如果我只能访问打包的war文件,我需要通过添加新资源或使用maven更新属性文件中的少量值并将新的重叠打包war文件推送到服务器上的tomcat来修改它?
在maven中这样做太复杂了吗?
如果我在我的存储库中安装war文件,maven构建过程会自动使用吗?
答案 0 :(得分:0)
它不假设WAR是Maven项目,无论这意味着什么,只是WAR是一个Maven工件。您可以将任何WAR安装为工件,它的构建方式无关紧要。如果您随后声明了对此工件的依赖关系,您将能够覆盖它。虽然添加和替换文件很容易(只需创建包含新文件的常规Web项目结构,然后WAR插件将完成其余的工作),但修改它们并不容易。如果您真的想要这样,那么在提取原始WAR之后但在项目的包阶段之前,您必须运行replacer plugin之类的内容。也可以通过使用一些奇特的插件来下载(WAR)文件而不是从repo中获取它,但这可能不是你应该做的事情,因为它消除了Maven的一半好处。
至于将新构建的应用程序部署到远程Tomcat,而doable using the Tomcat plugin,我不会从Maven那里做的事情。它通常是构建服务器的工作,例如, Jenkins,而Tomcat插件更适合本地开发和测试。