Ruby 耙形锉和锉刀

Ruby 耙形锉和锉刀,ruby,rake,jruby,gemfile,rakefile,Ruby,Rake,Jruby,Gemfile,Rakefile,因此,我理解了Rakefile和Gemfile的基本概念(Rakefile基本上只是用于编译和链接应用程序的依赖列表和shell命令,而gemfiles指定应用程序的gem版本依赖项),但是我应该如何协调使用它们呢?更具体地说:我在我的大学有一个项目,我将使用Ruby 1.8.7和JRuby 1.7,并在本地机器上通过RVM安装一组gems 问题是,我的应用程序必须在我的Uni的计算机实验室中编译和运行,并且Uni在这些机器上没有JRuby。我可以安装到我的shell帐户上,我使用JRuby来编

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

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

我大学的机器已经安装了Rake,我想知道我是否可以设置一个Rake文件来调用JRuby和我需要的所有gem(在gem文件中指定了它们各自的安装路径)。这可能吗?或者我对rakefiles和gemfiles的想法是错误的


谢谢

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

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

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

对于JRuby版本:

jruby -S rake your:task
rake your:task
或者只是常规的Ruby版本:

jruby -S rake your:task
rake your:task