2016-08-02 45 views
0

我想在离线模式下(即没有互联网连接)在rails上安装ruby 。所以我从http://railsinstaller.org/en下载了railsinstaller-3.2.0.exe并安装了它。截至去年底,我有红宝石安装,但为了安装导轨我跑在windows下离线安装rails

gem install rails 

,面对这些错误:(意为命令需要互联网连接)

ERROR: Loading command: install (ArgumentError) 
     unknown encoding name - CP720 
ERROR: While executing gem ... (NoMethodError) 
     undefined method 'invoke_with_build_args' for nil:NilClass 

我的意思是有什么样的解决方案用另一台连接到互联网的电脑下载宝石,然后将文件复制到安装好的宝石目录中的适当位置。

如果您有任何想法,请帮助我。

+0

因为创业板有依赖关系,所以它试图让他们 –

回答

0

正如在评论中所说,这是一个gem(lib)依赖性问题。

您可能想要考虑安装bundler gem库来管理您的依赖关系,只需要运行bundler就可以捆绑安装,它会下载所有需要的gem,包括任何gem依赖项。

你可以简单地安装捆绑,只需运行

gem install bundler 
在Rails项目目录

然后,只需运行bundle安装。

通常运行项目(如钢轨为例),你可能有机会与

bundle exec rails start 

启动它要安装一个非互联网上创业板公司的电脑连接,你可能要参考this answer上只是问题。

This is the website在哪里可以找到所有可用的红宝石宝石。红宝石 宝石下载。找到你感兴趣的人并下载它。

然后将宝石移动到您选择的目录中,然后在命令提示符下将它们从 中取出。我正在使用C:/ruby193/bin/pony-1.4.gem

假设我们感兴趣的宝石是小马宝石(smtp 电子邮件)。

只需键入创业板安装小马1.4.gem

,你应该得到它的手动安装,除非你有一个限制 ACC与不充分的管理权限。

您也可以参考关于此事的official documentation

+0

我知道这只是依赖关系,但假设没有互联网连接。因此,您所说的“gem install bundler”命令也需要互联网连接。 –

+0

那么,在这种情况下,可悲的是,你可以做的事情并不多(尽管如果我错了,那就纠正我)。您可以在本地计算机上运行您自己的Gem服务器,并使用通常使用的通用宝石,因此如果您无法连接到互联网,您至少需要访问至少需要启动的熊。 Bundler只是一个包含项目依赖管理和环境执行的包装器,但它仍然使用'gem'来安装,因为'gem'需要互联网,捆绑器也是如此。也就是说,你只需要安装一次任何宝石,然后它可以免费提供给任何其他项目 – Thermatix

+0

我想你在这里误解了一些东西,而且我有两台电脑,其中一台离线,一台在线。我的问题(现在更精确)是,我可以使用我的在线计算机系统(即下载我的rails项目所需的任何gem),然后使用USB电缆将它们传输到离线计算机系统。 –