写点什么

Warbler:增强 Java EE WAR 文件的 Rails 应用打包工具

  • 2007-09-17
  • 本文字数:768 字

    阅读完需:约 3 分钟

作为 JRuby 团队成员的 Nick Sieger,致力于将最新的 JRuby 1.0.1 版与 GoldSpike 1.3 相整合。使用 GoldSpike 可以将 Rails 应用发布到 JEE 服务器中,它是 JRuby extras 的一个组成部分。JRuby extras 是一组卫星项目,其目标是要填充 JRuby 与 Ruby 标准库之间的功能差距。因为不满意 GoldSpike 对应用进行打包的方式,Nick 决定重写 GoldSpike 打包插件,由此 Warbler 应运而生

对于 GoldSpike 的问题,Nick 说道:

[……] 我个人觉得它采用了一种错误的方式来把 Rails 应用打包成.war 文件。它将 Rails 应用的目录结构放置到.war 文件的根结构处,这样任何 Web 服务器或 Java 应用服务器都会错误地将你的代码视为静态内容。Java 中.war 文件规范指定了名为WEB-INF的特定目录,指明我们应该将相关应用放置在这个目录下隐藏起来,那为什么不用这个目录呢?……接下来,突然 GoldSpike 将我的整个 Rails 应用目录做了打包操作,甚至包括. svn 目录和所有的文件。所以我决定一劳永逸地解决这个问题。

Warbler 以gem形式发布,并与 JRuby 和 GoldSpike servlet 绑定在一起,这样一来,在 Java 应用服务器内部就可以完成对你的 Rails 应用请求的分发,它将WARBLER_HOME/lib/*.jar中的全部 jar 文件集合到你的应用中。而且它不会像 GoldSpike 那样去下载外部依赖模块。

Warbler 拥有简单的命令行操作界面以及灵活的配置方式,这使得在 JEE 服务器上部署 Rails 应用到 JRuby 中变得更加容易。相比 GoldSpike 打包插件,Warbler 的代码量减少了 50%。

查看英文原文: Warbler: Rails Packaging for Java EE WAR files enhancement - - - - - -

译者简介:郑柯,目前任职《程序员》杂志社高级编辑,有志于在中国的软件开发业界推广 Agile 的理念和方法论,笃信以人为本,关注 Ruby,关注敏捷,关注人。参与 InfoQ 中文站内容建设,请邮件至 china-editorial[at]infoq.com

2007-09-17 19:301121
用户头像

发布了 479 篇内容, 共 161.7 次阅读, 收获喜欢 52 次。

关注

评论

发布
暂无评论
发现更多内容

好不容易撑过了腾讯三面!却因为虚报工资被刷了,挥泪整理面经

android 程序员 移动开发

如何评价-Google-的-Fuchsia、Android、iOS-跨平台应用框架-Flutter

android 程序员 移动开发

如果你使用Jetpack中还没踩过这些坑,请务必收下这篇文章(1)

android 程序员 移动开发

天高任鸟飞,在你还苦闷Android出路时,总有人在系统钻研为高级开发做准备

android 程序员 移动开发

如何实现一个 System Services?,超详细

android 程序员 移动开发

如果你打算跳槽BAT这样的大厂,不妨看看这篇文章,android蓝牙串口收发

android 程序员 移动开发

妈蛋!HR你搞我,我的缺点就是身体不好不能加班,安卓面试题及答案2020百度

android 程序员 移动开发

太卷了!程序员面试前刷面经“神似,2021最新Android大厂面试真题大全

android 程序员 移动开发

如何通俗理解设计模式及其思想_,Android自学资料

android 程序员 移动开发

如果你使用Jetpack中还没踩过这些坑,请务必收下这篇文章

android 程序员 移动开发

如果你在中小厂,这些你一定要搞懂,分享一些行业经验

android 程序员 移动开发

好文推荐:RxHttp-完美适配Android-10-11-上传-下载-进度监听

android 程序员 移动开发

如果你不是天才,那么你一定要看看这篇—,android开发书籍推荐

android 程序员 移动开发

字节Android岗面试:Handler中有Loop死循环,为什么没有阻塞主线程

android 程序员 移动开发

[ CloudWeGo 微服务实践 - 番外 ] Go 代码静态检查

baiyutang

golang 11月日更

太强了吧,这居然是19年双非本科开发一年的Android面经总结!开发几年的老程序员自叹不如

android 程序员 移动开发

太难为我这个应届生了,腾讯面试了8轮,终拿下腾讯Android测发岗offer

android 程序员 移动开发

头条Android 岗年薪45W+面经分享(技术 6面,Android开发者值得深入思考的几个问题

android 程序员 移动开发

如何有效地刷算法题?,武汉软通动力android面试

android 程序员 移动开发

字节三面:ButterKnife为什么执行效率为什么比其他注入框架高?它的原理是什么

android 程序员 移动开发

如何高效、快速学习Flutter?如何避坑,膜拜大牛

android 程序员 移动开发

字节一面:https-真的安全吗?可以抓包吗,分享一点面试小经验

android 程序员 移动开发

如何在-Android-中完成一个-APT-项目的开发?,android文件下载实战

android 程序员 移动开发

如何缩减接近 50% 的 Flutter 包体积,android开发计算器课程设计

android 程序员 移动开发

如何让你的app在后台被干掉后优雅的启动,flutter调用原生sdk

android 程序员 移动开发

如何高效、快速学习Flutter?如何避坑(1),安卓消息分发机制

android 程序员 移动开发

字节三面:ButterKnife为什么执行效率为什么比其他注入框架高?它的原理是什么(1)

android 程序员 移动开发

如何在复杂业务场景中优雅实现Android指纹验证?,rust移动端跨平台开发

android 程序员 移动开发

如何用10行代码让app全局置灰,扫地阿姨看完都学会了

android 程序员 移动开发

如何看待:程序员(研究生学历,kotlin协程切换线程

android 程序员 移动开发

如何让你的回调更具Kotlin风味,基于h5框架的移动app开发

android 程序员 移动开发

Warbler:增强Java EE WAR文件的Rails应用打包工具_Ruby_Sebastien Auvray_InfoQ精选文章