栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

从war文件中运行rake任务

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

从war文件中运行rake任务

终于找到了行之有效的…。

java -jar lib/jruby-complete-1.6.7.jar -S rake db_migrate[1]

在我的个人计算机上运行正常,但在生产中给了我类似下面的信息

rake aborted!cannot load Java class com.mysql.jdbc.DriverTasks: TOP => db_migrate(See full trace by running task with --trace)

这是因为我在rake任务中使用了诸如续集,记录器之类的宝石..我将那些安装在我的机器上但未安装在生产机器上的头戴上..在生产中安装这些宝石是不可行的..所以我将rake任务中所需的gems安装在一个单独的目录中,并将其转换为jar文件(http://blog.nicksieger.com/articles/2009/01/10/jruby-1-1-6-gems-
in -a-jar
)…此命令终于有效了…

java -jar lib/jruby-complete-1.6.7.jar -rlib/mygems.jar -S rake db_migrate[1]

需要指出的是:无论您将jar文件放在何处,莺歌总是将其发送到lib目录,尽管您仍然会在原始位置看到一个虚拟的jar文件…我认为解决方案可以使工作更整洁虽然没有尝试过,但是有几种方法。

i>通过在上述博客中提到的jruby-complete-1.6.7.jar本身中包含gem文件…

java -jar lib/jruby-complete-1.6.7.jar -S rake db_migrate[1]

然后应该工作…

ii>通过编写某种清单文件并将其包含在mygems.jar中,以使其独立运行…如果发生这种情况

java -jar myapp.jar -S rake db_migrate[1]

应该管用



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/422072.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号