这篇blog是整理给自己看的,因为一年前解决过一个问题,结果时间一长居然忘了,今天重新解决了一遍,自己汗一下

warbler是一个打包工具,可以将rails应用打包为war,使用如下:

$ gem install warbler # 安装
$ cd your_rails_app
$ warbler #使用

然后你就可以在你的rails项目下看到一个war文件了,非常简单

好的开源项目应该既方便又强大,warber也基本符合这个要求,它可以定制自己的打包参数,你可以在rails项目中生成缺省配置文件,然后按照你的特别要求修改配置文件:

warble config # then you can edit config file whose path is config/warble.rb 

ruby的配置文件本身就是ruby代码,这里面有注释,就不解释了,值的说明的是这几行

  # Loose Java classes and miscellaneous files to be included.# config.java_classes = FileList["target/classes/**.*"]# One or more pathmaps defining how the java classes should be copied into# the archive. The example pathmap below accompanies the java_classes# configuration above. See http://rake.rubyforge.org/classes/String.html#M000017# for details of how to specify a pathmap.# config.pathmaps.java_classes << "%{target/classes/,}p"

注释里写的很清楚,打包工具需要解决两个问题:

  1. 打包的文件来自哪里;
  2. 打包时,文件放到哪个目录下,文件名是什么;

这两个问题在config中是分开设置的,一个是 java_classes ,第二个是 pathmaps.java_classes ,所以你可以设置好前一个路径,然后用后一个的正则表达式改成你需要的war中的位置

比如在 java_side 中,我设定的 spring 配置文件在 java/conf 目录下,这些文件应该直接copy到 WEB-INF/classes 中,于是可以这么设定:

config.java_classes = FileList["java/conf/**/*"]
config.pathmaps.java_classes << "%{java/conf/,}p"

同理,其它的路径也有对应的 pathmaps 可以设置,仔细看看就知道

另外,借助ruby的动态特性,我们也可以用插件进行设置增强

这块的相关的代码是在下面的文件中:

$JRUBY_HOME/gems/warbler-1.3.0/lib/warbler/config.rb
$JRUBY_HOME/gems/warbler-1.3.0/lib/warbler/traits/war.rb

有兴趣的同学可以看看

[jruby] warbler 配置问题说明相关推荐

  1. JRuby Basics(JRuby基础)

    翻译自SUN的官方文档 Topics 主题 • What is and what is not JRuby? 什么是JRuby? • Why JRuby (over Ruby) & JRuby ...

  2. win10+Linux双系统安装及一些配置问题

    学习是一个不断积累的过程.由混沌不解到豁然开朗,整个过程摧残心灵,但结果会使人心上开花. 实验室台式机环境配置出现问题,于是我大刀阔斧开始了重装系统之路. 首先,win10系统有问题,第一步重装win ...

  3. Git 的简单使用及ssh配置问题-赖大大

    软件安装 第一步当然是安装啦. 官方网址:https://git-scm.com/ 具体操作 在你本地电脑的文件夹里右击鼠标,选Git base here 显然,你是在本地仓库的master分支上,通 ...

  4. 利用.NET的XML序列化解决系统配置问题

    作者:未知  请作者速与本人联系  出自: http://blog.csdn.net/ycl111/ 在Web系统开发中,我们经常需要读取和设置一些系统配置项,常见的例如数据库连接字符串.上传路径等等 ...

  5. python对象模型 ruby_使用JRuby/Jython实现Ruby/Python的互操作性?

    不,那不行.至少不是你想的那样.在 Jython和JRuby之间的互操作性与CPython和YARV之间的工作方式相同:它们都运行在同一个平台上,因此可以使用该平台彼此通信.在 在CPython和YA ...

  6. JRuby:谁说鱼与熊掌不可兼得

    JRuby:谁说鱼与熊掌不可兼得? --写在国内第一本JRuby类图书<JRuby实战>即将出版之际 推荐阅读: 1.大师Martin Fowler强烈推荐的一本书 记得以前在和朋友聊天时 ...

  7. 2416开发板上网卡芯片lan9220的时序配置问题

    2416开发板上网卡芯片lan9220的时序配置问题 最近在学习某品牌的2416(不好评论)开发板,其他都还好,就这个网卡把我折磨得够呛.lan9220这款网卡芯片功能极其强大,能耗控制,远程唤醒,高 ...

  8. 在OperaMasks中使用ELite和JRuby动态语言的秘笈

    如何在OperaMasks中使用动态语言 1. 前言 2. 在OperaMasks中使用ELite 2.1. ELite的介绍 2.2. 在OperaMasks中使用ELite 3. 在JSF中使用R ...

  9. Eclipse导入Maven项目解决Build Path不能配置问题

    Eclipse导入Maven项目解决Build Path不能配置问题 参考文章: (1)Eclipse导入Maven项目解决Build Path不能配置问题 (2)https://www.cnblog ...

  10. Windows魔法堂:解决“由于启动计算机时出现页面文件配置问题.......”

    Windows魔法堂:解决"由于启动计算机时出现页面文件配置问题......." 参考文章: (1)Windows魔法堂:解决"由于启动计算机时出现页面文件配置问题... ...

最新文章

  1. 使用AD5933分析复阻抗的时钟频率设置
  2. 如何利用隐写术配合四个重定向连接到C2服务器
  3. 窗口!窗口!- Windows程序设计(SDK)003
  4. boost::process::start_dir相关的测试程序
  5. 大数据将如何重构汽车产业的商业模式?
  6. 通过OData创建C4C Lead时,遇到Account missing的错误消息
  7. 联想小新air14笔记本黑屏_联想小新air14锐龙版测评,谈谈它的好和坏
  8. aws rds监控慢sql_将AWS S3存储桶与AWS RDS SQL Server集成
  9. 前端笔记-201805
  10. 远程连接另一台电脑,如何用被远程的电脑听歌
  11. EDM营销解读[转载]
  12. 打光篇-Radiometric Photometric概念
  13. U盘格式选择 FAT32、exFAT、NTFS
  14. 最新二开修复嗨Go理财分红商城完整源码+区块商城综合系统源码
  15. 灵魂书籍 | 《记忆力心理学 | 赫尔曼·艾宾浩斯》
  16. jsdelivr cdn npm替代方案
  17. 交换机二三层转发原理简单总结
  18. C# .net Framework Windows窗体应用【01】
  19. 数字孪生 3D 科技馆的科学传播新模式
  20. 删除/清除/过滤标点(所有中英文标点)的正则表达式——Desktop Search开发笔记【经验积累】

热门文章

  1. sitemix mysql_用Sitemix免费空间搭建高速日本无限流量GAE流行应用_免费PHP空间 | 微站中国|MicroHost...
  2. 爬虫【11】易班刷网薪系统
  3. 问题G:卡布列克常数
  4. 武科大计算机科学与技术教务处,欢迎访问武汉理工大学计算机科学与技术学院...
  5. LBS(基于位置服务(Location Based Service))
  6. linux双显卡自动切换,Deepin(Linux)双显卡之bumblebee(大黄蜂)、Prime及手动切换方案...
  7. 智能家居APP使用指南
  8. 百度站长平台“你无权访问该页面,点击确定按钮返回首页”
  9. 适合产品经理的桌面壁纸-分类神器
  10. HTTP Headers