我这里有一些麻烦。 我有一个Rails 2.3项目中工作(通过ssh在生产服务器上的工作 - 不要问为什么)。 这里是Gemfile中 。 当delayed_jobs正在试图启动,输出说我需要安装捆绑宝石。 问题是,gemdir是/var/lib/gems/1.8/,我没有该目录的写特权时。 然而,有在〜/项目/共享/宝石/红宝石/ 1.8 /宝石在那里我可以写一个目录。
我如何定义创业板的安装路径?
我这里有一些麻烦。 我有一个Rails 2.3项目中工作(通过ssh在生产服务器上的工作 - 不要问为什么)。 这里是Gemfile中 。 当delayed_jobs正在试图启动,输出说我需要安装捆绑宝石。 问题是,gemdir是/var/lib/gems/1.8/,我没有该目录的写特权时。 然而,有在〜/项目/共享/宝石/红宝石/ 1.8 /宝石在那里我可以写一个目录。
我如何定义创业板的安装路径?
您可以添加以下到您的config.ru文件:
ENV['GEM_HOME']="#{ENV['HOME']}/projects/shared/gems/ruby/1.8/gems"
ENV['GEM_PATH']="#{ENV['GEM_HOME']}:/var/lib/ruby/gems/1.8"
require 'rubygems'
Gem.clear_paths
这会告诉您的机架应用到哪里寻找宝石。
同时配置您的服务器的.bashrc:
export GEM_HOME="$HOME/projects/shared/gems/ruby/1.8/gems"
export GEM_PATH="$GEM_HOME:/var/lib/ruby/gems/1.8"
要安装FOO宝石到指定文件夹,只要使用--install-dir
选择,即:
$ gem install --install-dir /path/to/gems/folder foo
它有助于在:
bundle install
-例如,如果一个人想安装包宝石本身,或者想要宝石(未在列的Gemfile)安装到包文件夹 sudo gem install
命令失败,由于缺乏写入权限默认安装路径 希望帮助。
环境变量GEM_HOME
定义创业板的安装位置。 您需要将其设置为所需的位置。 该命令是操作系统特定的。
在Windows中,它被set
set GEM_HOME=[path]/projects/shared/gems/ruby/1.8/gems
Linux的将是export
export GEM_HOME=~/projects/shared/gems/ruby/1.8/gems
捆绑接受--path选项。
bundle install --path vendor/bundle