【问题标题】:How do I run a Ruby Gem?如何运行 Ruby Gem?
【发布时间】:2012-04-05 06:35:03
【问题描述】:

这可能看起来很愚蠢,但我最近尝试安装 SASS 并按照他们的说明进行操作:

$ gem install sass 
$ sass --watch [...]

所以我跟着:

root@server:~# gem install sass
Successfully installed sass-3.1.15
1 gem installed
Installing ri documentation for sass-3.1.15...
Installing RDoc documentation for sass-3.1.15...

root@server:~# sass
bash: sass: command not found

尽管像白痴一样环顾四周,试图找到一些简单的方法来运行 gem run sass 之类的东西或其他一些变通方法以使其正常运行,但我或多或少不知所措。

【问题讨论】:

  • echo $PATH 的输出是什么?
  • /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin(虽然问题已经解决,见下文)。谢谢你把它放在正确的轨道上:)

标签: ruby rubygems sass


【解决方案1】:

似乎 Debian/Ubuntu 将 ruby​​ gem 放入 /var/lib/gems/1.8/bin

所以解决方案(至少对于 Ubuntu/Debian)是:

$ sudo -s
# echo 'PATH=/var/lib/gems/1.8/bin:$PATH' > /etc/profile.d/gemspath.sh
# chmod 0755 /etc/profile.d/gemspath.sh

...然后打开一个新的 shell 会话。

(这已在Ubuntu 11.10 中修复。)

【讨论】:

    【解决方案2】:

    如果你碰巧通过rbenv安装了Ruby,则需要执行以下命令

    rbenv 重新散列

    【讨论】:

    • 我还必须清理文件 $HOME/.rbenv/shims/.rbenv-shim 来解决这个问题。在接受的答案上发布您的解决方案。
    【解决方案3】:

    在 macOS 上,我必须将 gem 可执行目录添加到路径中。
    将这些行添加到您的 ~/.bashrc 文件中,然后重新打开终端以刷新环境变量。

    # gem                                                                      
    gembin=`(gem env | sed -n "s/.*EXECUTABLE DIRECTORY: \(.*\)/\1/p")`
    export PATH=$gembin:$PATH
    

    【讨论】:

      【解决方案4】:

      如果您使用 macOS 并且您:

      • 我不了解/不关心 Ruby。
      • 我只想运行这个程序。
      • 为什么这么复杂?

      然后运行:

      ~/.gem/ruby/*/bin/jekyll

      其中jekyll 是您刚刚使用gem install 安装的东西。

      【讨论】:

      • 如果使用 brew 安装 ruby​​,ruby gem 的路径将在 /usr/local/lib/ruby/gems/*/gems/gem-name/bin/executable-file-name跨度>
      【解决方案5】:

      如果您尝试为您的 gem 运行一个简单的 WEBrick 服务器,您可以在安装后执行以下操作:

      sass start
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-27
        • 2020-01-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多