最佳答案
修改jar或ear内部文件的唯一方法是使用< unzip>任务,使用< replace>任务修改文件中的字段,然后使用< zip>重新压缩文件.或< jar> /< ear>任务.
有几种方法可以处理这个,而无需解压缩和重新压缩你的ear / jar / war文件:
>首选方法是设置应用程序服务器,以便它可以在耳朵之外找到您的属性.也可以在指定位置时将application.xml文件配置为不使用相对目录,而不是从计算机根目录指定位置.通过从您的耳朵中删除嵌入式环境信息,您可以在所有环境中使用相同的earfile.
>遗憾的是,我们无法执行上述操作,必须为每个环境提供单独的ear文件.我们使用Jenkins作为我们的连续构建服务器.当Jenkins完成我们的构建时,我们会同时为每个环境构建多个耳朵.这样,当我们从Dev转到QA再到STAGE再到Production时,我们至少可以引用相同的内部版本号.我们编译一次,然后使用AntContrib
使用正确的属性文件设置和正确的application.xml文件来获取earfile.我们使用< filterset>在我们的< copy>中我们构建耳朵时修改属性和application.xml的任务.