Rakefile 和 Gemfiles

问题描述 投票:0回答:1

所以我了解了 Rakefile 和 Gemfile 的基本概念(rakefile 基本上只是用于编译和链接应用程序的依赖项列表和 shell 命令,而 gemfiles 指定应用程序的 gem 版本依赖项),但是我应该如何统一使用它们?更具体地说:我在我的大学有一个项目,我将使用 Ruby 1.8.7 和 JRuby 1.7 以及我通过 RVM 在本地计算机上安装的一组 gem。

问题是我的应用程序必须在我的大学计算机实验室上编译和运行而不会出现错误,而大学的这些机器上没有 JRuby。我可以安装到我的 shell 帐户上,我使用 JRuby 来编译我的应用程序,但现在我需要输入 jruby 安装的完整路径来编译我的项目(类似于 /usr/home/usrname/blah /jruby-1.7.0),我觉得这很烦人,我想要一些更简单的东西(同时学习)。

我大学的机器安装了 Rake,我想知道是否可以设置一个 rake 文件来调用 JRuby 和我需要的所有 gem(在 gemfile 中指定及其各自的安装路径)。这可能吗?或者我是否以错误的方式思考 rakefiles 和 gemfiles?

ruby rake jruby gemfile rakefile
1个回答
1
投票

Rakefile 用于设置在项目上下文中运行 Rake 的依赖关系。您已经正确描述了 Gemfile 的用途。

Rake 是 JRuby 的一个独立程序。它将包含在 JRuby 安装的 bin 文件夹中。当您到达 Rakefile 时,您已经处于错误版本的 Rake 环境中(常规 Ruby 安装中包含的版本)。

我认为你正在寻找的只是对你的道路的修改。在路径中包含 JRuby bin 文件夹,这样您就可以指定要使用的 Rake 版本。

对于 JRuby 版本:

jruby -S rake your:task

或者只是普通的 Ruby 版本:

rake your:task
© www.soinside.com 2019 - 2024. All rights reserved.