2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

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

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

关注

评论

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

CAD复制到excel如何调整图纸格式

极客天地

CAD如何调整动态块参数显示大小

极客天地

行业SOTA,京东首个自研十亿级时序大模型揭秘

京东零售技术

一文读懂:构建类Arb二层公链,收费模式全解析

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

企业网络升级必备:SD-WAN可以做到这些!

Ogcloud

SD-WAN SD-WAN组网 SD-WAN厂商 sd-wan专线 SD-WAN厂家

瞧瞧别人家的限流,那叫一个优雅!

不在线第一只蜗牛

Java

《Operating System Concepts》阅读笔记:p601-p605

codists

操作系统

大语言模型火爆的今天,我们为什么还要拥抱世界模型?

脑极体

AI

数字先锋 | 云上育才,课堂刮起科技风!

天翼云开发者社区

云电脑

RabbitMQ 消息队列幂等性,优先级队列,惰性队列的详细说明

量贩潮汐·WholesaleTide

Rabbit MQ

文心4.5Turbo将发布!体验百度文心4.5与X1后,大模型评测:预测新模型能力更强、价格迎新低做开发者延伸的"手和脑"

Yan-英杰

AI 大模型

Solana链开发全景指南:从环境搭建到生态实践

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

zk源码—单机和集群通信原理

电子尖叫食人鱼

GUI Tracker采集工具,Agent时代的数据利器

澳鹏Appen

智能体

开发一款区块链软件的周期解析

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

BeeWorks:打造安全可控的企业内网即时通讯平台

BeeWorks

即时通讯 IM 私有化部署 企业级应用

从Grok-3霸榜谈起:高难度题库如何助力AI推理能力飞跃?

澳鹏Appen

数据集 大模型 题库

Nexpose 8.2.0 for Linux & Windows - 漏洞扫描

sysin

Nexpose

Databend Cloud 如何给游戏行业数据分析带来 10 倍收益提升?

Databend

crossover安装exe后无法打开怎么办?用CrossOver安装成功的软件但打不开怎么办?

阿拉灯神丁

容器 应用程序配置 Mac软件 CrossOver Mac下载

zk源码—单机和集群通信原理(二)

电子尖叫食人鱼

PHP传递参数(跨文件)的8种常见方法

量贩潮汐·WholesaleTide

php

工作搁置重启:引发的决策深思

TechLead Studio

决策管理

CAD等分对象方法

极客天地

2024公有云大模型调用量,火山引擎中国第一!

极客天地

中关村论坛聚焦“AI+新材料”:枫清科技与中化信息、吉林大学共建联合实验室推动产业升级

Fabarta

人工智能 AI+ 大模型 新材料

精彩抢先看!博睿数据将亮相GOPS全球运维大会2025深圳站

博睿数据

GOPS全球运维大会 Bonree ONE LLM模型 DeepSeek

MPP 架构解析:原理、核心优势与对比指南

镜舟科技

大数据处理 分布式计算 存算分离 StarRocks MPP 架构

SD-WAN如何突破传统MPLS网络局限?

Ogcloud

SD-WAN SD-WAN组网 SD-WAN厂商 sd-wan专线 SD-WAN厂家

阿里云CDN应对DDoS攻击策略

网络安全服务

阿里云 CDN 服务器 DDoS DDoS 攻击

BeeWorks Meet:私有化视频会议的高效选择

BeeWorks

即时通讯 IM 私有化部署 局域网视频软件

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