Ubuntu 9.10
刚刚安装了newgem
gem install newgem
Run Code Online (Sandbox Code Playgroud)
当我尝试
newgem new_project
Run Code Online (Sandbox Code Playgroud)
我明白了
adam@adam-ubuntu:~$ newgem newproject
newgem: command not found
Run Code Online (Sandbox Code Playgroud)
我通过echo $ PATH检查了我的路径
adam@adam-ubuntu:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/adam/.gem
Run Code Online (Sandbox Code Playgroud)
和我的宝石环境
adam@adam-ubuntu:~$ gem environment
RubyGems Environment:
- RUBYGEMS VERSION: 1.3.6
- RUBY VERSION: 1.8.7 (2009-06-12 patchlevel 174) [x86_64-linux]
- INSTALLATION DIRECTORY: /usr/lib/ruby/gems/1.8
- RUBY EXECUTABLE: /usr/bin/ruby1.8
- EXECUTABLE DIRECTORY: /usr/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /usr/lib/ruby/gems/1.8
- /home/adam/.gem/ruby/1.8
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org/
Run Code Online (Sandbox Code Playgroud)
我不是很热的路径等,但上面列出的所有宝石目录都在路径上,那怎么来找不到命令呢?
rub*_*iii 30
您的$PATH变量需要包含Ruby的bin目录的确切路径.添加目录PATH不包括它的子文件夹.尝试通过以下方式添加bin目录:
export PATH=$PATH:/home/adam/.gem/ruby/1.8/bin
Run Code Online (Sandbox Code Playgroud)
或者如果您使用sudo以下方法安装了gem :
export PATH=$PATH:/usr/lib/ruby/gems/1.8/bin
Run Code Online (Sandbox Code Playgroud)
您可能希望将其添加到您的.bashrc文件中,这样您就不必在每次打开新bash时手动设置它.
(只是窃取@John Franklin 的评论)
$ gem environment
Run Code Online (Sandbox Code Playgroud)
会告诉你的EXECUTABLE DIRECTORY。然后像这样(在你的 .bashrc 或其他 shell 配置文件中)把这个值放在你的 PATH 中。
export PATH="$PATH:/path/to/bin"
Run Code Online (Sandbox Code Playgroud)
重新加载您的 shell,然后您应该可以使用已安装的 gem。