免费下载案例集|20+数字化领先企业人才培养实践经验 了解详情
写点什么

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

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

关注

评论

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

何怡澜:从抖音网红到芯片创业者的跨界之旅

科技热闻

DBA解决慢查询问题的利器

NineData

sql 工具 dba NineData 慢查询分析

技术分享 | ChatGPT API 调用总超时?破题思路在这

LigaAI

Python 后端 openai chatgpt api chatpt

教你使用Prometheus-Operator进行K8s集群监控

华为云开发者联盟

云原生 k8s 后端 华为云 华为云开发者联盟

让网页自己总结、解答、翻译、创作?你的超级助理已上线

新消费日报

淘宝订单API接口在电商行业中的应用与实现

Noah

用友iuap智能中台“数智员工”在中核四川环保成功上岗

用友BIP

iuap

企业数智化进阶模型,大型企业实现数智融合的成功之“道”

用友BIP

企业服务大模型

数据驱动国资监管 用友BIP助力提高国有资本运营效能

用友BIP

数据驱动

Illustrator 2024 for mac(标准矢量插画设计软件) v28.1完整激活版

mac

苹果mac Windows软件 矢量图形编辑软件 Illustrator 2023 AI023

CentOS-8 - AppStream 错误:为 repo ‘AppStream‘ 下载元数据失败解决教程。

百度搜索:蓝易云

云计算 Linux centos 运维 云服务器

什么是数字化营销?如何进行数字化营销?数字化有多重要?

天津汇柏科技有限公司

专家观点∣国产化价值替代之路—钢铁企业的特征管理

用友BIP

国产价值替代

软件测试/人工智能丨利用 ChatGPT 编写测试报告

测试人

人工智能 软件测试

2024上海智慧城市展会(世亚智博会)促进长三角地区智慧城市发展

AIOTE智博会

智博会 上海智博会 智慧城市展

软件测试/人工智能丨如何利用 ChatGPT 编写测试方案

测试人

人工智能 软件测试

EMQ 与边缘计算社区共同举办全球边缘计算大会上海站,12月16日

EMQ映云科技

边缘计算 mqtt emq emqx

35 | Trie树:如何实现搜索引擎的搜索关键词提示功能

鲁米

# 浅谈分布式操作系统KubeWharf 的第二批开源项目

苏沐

#k8s #云原生 分布式操作系统 #运维 KubeWharf

发布jar包到maven中央仓库

不在线第一只蜗牛

Java 仓库 镜像仓库

定档12月28日,WAVE SUMMIT+深度学习开发者大会2023狂欢来袭!

飞桨PaddlePaddle

人工智能 深度学习 开发者 WAVE SUMMIT

即时通讯技术文集(第27期):实时音视频技术合集(Part2) [共17篇]

JackJiang

网络编程 即时通讯 IM

Debian pip 错误 error: externally-managed-environment 解决方法

百度搜索:蓝易云

Linux 运维 pip 云服务器 Debian

专业强大的英语学习工具:Eudic欧路词典增强激活版

mac大玩家j

英语学习 Mac软件 英语学习工具

C# 从代码入门 Mysql 数据库事务

EquatorCoco

C# MySQL 数据库 编程语言

最常用的4种光纤接口结构是什么样式呢?

小齐写代码

1688一件采购实现指南:含代码实现采购流程

Noah

专业强大的远程管理:Royal TSX激活最新版

胖墩儿不胖y

远程办公 远程控制软件 Mac软件

Tableau Desktop 2019 for Mac(全能数据分析工具) v2019.1.0永久激活版

mac

数据分析工具 Tableau Desktop 2019 苹果mac Windows软件

2023年中国IT用户满意度征集结果公布

Geek_2d6073

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