HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

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:301057
用户头像

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

关注

评论

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

极客架构模块2作业-朋友圈高性能架构分析

Geek_649372

架构实战营

模块2作业

灯火阑珊

苏州园区:面向全国“发帖”聚力 加快创建区块链技术应用高地

CECBC

架构实战营 - 模块 2- 作业

请弄脏我的身体

架构实战营

架构实战营 模块二:课后作业

👈

架构实战营

阿里致敬武侠首发“Java架构修炼笔记”,深入内核,拒绝蒙圈

Java架构师迁哥

阿里巴巴用实践告诉你,架构师到底需要掌握什么样的技术?

Java架构师迁哥

架构实战营 模块二:学习总结

👈

架构实战营

阿里架构师如是说:权限系统就该这么设计

Java架构师迁哥

【腾讯阿里最全面试题】Redis持久化RDB和AOF 的区别

Linux服务器开发

面试 后端 面经 Linux服务器开发

架构实战营 - 模块 2- 作业

冬天的树

WEB-API的设计与开发

李印

HTTP 软件设计 web tech

华为帐号服务学习笔记(四):Authorization Code模式服务端开发

Coding狙击

Java android

业务架构训练营第 0 期模块二作业

目标一个亿

架构实战营 - 模块二作业

凯迪

架构实战营

华为“引商”,VR“刻羽”,共觅知音人

脑极体

Flutter 学习笔记(二) Container 组件

U2647

flutter 4月日更

2020从干饭人到打工人

空城机

生活 生活记录 杂记 4月日更

这套Java面试题推出第二天就惨遭全网封杀!已帮我拿下15个Offer

Java架构追梦

Java 阿里巴巴 架构 面试 金三银四

ThreadPoolExecutor源码解读(三)如何优雅的关闭线程池(shutdown、shutdownNow、awaitTermination)

徐同学呀

线程池 Java源码 JUC ThreadPoolExecutor

模块2-微信朋友圈高性能架构设计

yu

史上最强的:京东北极星商业系统权限管控实践

Java架构师迁哥

ThreadPoolExecutor源码解读(四)如何正确使用线程池(总结坑点+核心参数调优)

徐同学呀

ThreadPoolExecutor

HarmonyOS开发者日再现上海,生态最新进展、核心代码解析、创新案例分享

Geek_283163

读懂「数据」在区块链网络中流动的3种范式?

CECBC

区块链

增强产业链供应链自主可控能力,区块链能否贡献力量?

CECBC

区块链

Github接近10w点赞!阿里巴巴内部Java面试参考指南

Java 程序员 架构 面试

ThreadPoolExecutor源码解读(二)execute提交任务,Worker详解。如何执行任务?如何回收空闲线程?

徐同学呀

线程池 Java源码 JUC ThreadPoolExecutor

ScheduledThreadPoolExecutor源码解读(一)DelayedWorkQueue高度定制延迟阻塞优先工作队列

徐同学呀

线程池 Java源码 ScheduledThreadPool JUC

ScheduledThreadPoolExecutor源码解读(二)ScheduledFutureTask时间调度执行任务(延迟执行、周期性执行)

徐同学呀

线程池 Java源码 ScheduledThreadPool JUC

Spark运行状态监控与优化

小舰

4月日更

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