Buildr - 在打包战争中过滤 web.xml

发布于 2024-11-27 18:19:03 字数 229 浏览 1 评论 0原文

使用Buildr打包war时是否可以过滤web.xml文件?

构建器文档:

没有太多提示,package :war 就会选择 src/main/webapp 目录并将其放置在 WAR 的根目录下

我在 web.xml 中定义了一个占位符或令牌,我想在打包 war 时根据我正在构建的环境替换它。最好的方法是什么?封装方法有过滤选项吗?

Is it possible to filter the web.xml file when packaging a war using Buildr?

Buildr documentation:

Without much prompting, package :war picks the contents of the
src/main/webapp directory and places it at the root of the WAR

I have a place holder or token defined in the web.xml and I would like to replace it when packaging the war depending on which env I am building. What is the best way to go about it? Is there a filtering option for the package method?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦亿 2024-12-04 18:19:03

您可以指示 Buildr 过滤 src/main/webapp 下的资源,并将生成的文件放置在 target/webapp 下,

filter_webapp = file("target/webapp") do |task|
  filter('src/main/webapp/').into(task.to_s).using(
    'version' => '9999'
  ).run
end

然后将您的新任务与资源任务(即打包前隐式需要),

resources.enhance [filter_webapp]

最后将过滤后的资源进行打包,

package(:war).with(filter_webapp)

更多过滤细节请参见http://buildr.apache.org/building.html#resources

You can instruct Buildr to filter your resources under src/main/webapp and place the resulting files under target/webapp,

filter_webapp = file("target/webapp") do |task|
  filter('src/main/webapp/').into(task.to_s).using(
    'version' => '9999'
  ).run
end

then wire your new task with the resources tasks (which is implicitly required before packaging),

resources.enhance [filter_webapp]

and finally package the filtered resources,

package(:war).with(filter_webapp)

For more details about filtering, see http://buildr.apache.org/building.html#resources

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文