实现基于maven的安装程序


maven user list中已经提出了类似的问题,但我有类似的情况.

我有一些服务,打包为.WAR,由maven构建.但是,此.WAR文件需要自定义:我需要以不同的方式打包它,具体取决于用户输入.基本上,用户应该自己选择组件,他想添加到WAR,并为这些组件定义一些简单的配置.

我需要做的是:

>创建一个“轻量级”安装程序,它不包含任何maven
工件(或者,如果不可能,则包含所有这些工件=“重量级”安装程序).
>当最终用户启动安装程序时,系统会要求他提供要打包的组件列表(=复选框)
>对于每个组件,安装程序会询问配置选项(然后保存为.property文件,每个组件一个)
>然后,安装程序仅获取所需的工件(由用户选择必需的工件),并替换步骤3中的工件中的属性文件(或将它们放入“classes /”).
>最后,它创建了即用型WAR包,并(可选)在后台启动tomcat(或jetty).

IzPack仅帮助解决第2步.但是有没有通用的解决方案呢?

最佳答案 我不知道这样做的任何通用解决方案,尤其是打包自定义WAR的东西. IzPack可以收集安装参数(也许有助于解决第3步),IzPack有一个名为
Web Installers的高级功能,可以帮助解决第4步,但据我所知,它不是构建/打包工具,所以它不会涵盖步骤5(最重要的).

也许maven原型可以在这里提供帮助(在交互模式下).但我甚至不确定原型能否提供您所需的灵活性.换句话说,这并不简单.

实际上,在你的情况下,我认为Ant(有Maven Ant Tasks或Ivy)将是最好的选择.我知道这不是你要求的,但我不认为Maven是你的用例的正确工具.

点赞