【问题标题】:Gem does not install Jekyll on Ubuntu 14.04: command not recognizedGem 未在 Ubuntu 14.04 上安装 Jekyll:无法识别命令
【发布时间】:2014-11-20 22:34:14
【问题描述】:

我花了几个小时试图在我全新安装的 Ubuntu 14.04 上安装 ruby​​ 和 jekyll。我已经安装了所有依赖项和诸如此类的东西:

[05:25 PM] [~] $ ruby -v
ruby 1.9.3p551 (2014-11-13 revision 48407) [x86_64-linux]
[05:28 PM] [~] $ rvm -v
rvm 1.26.3 (latest) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis             <mpapis@gmail.com> [https://rvm.io/]
[05:28 PM] [~] $ rbenv -v
rbenv 0.4.0
[05:28 PM] [~] $ nodejs -v
v0.10.25

我尝试通过sudo apt-get install jekyllsudo gem install jekyll 安装 Jekyll。两者似乎都已顺利安装。但是,检查 jekyll 上的版本给了我:

    [05:31 PM] [~] $ jekyll -v
   /usr/lib/ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find jekyll (>= 0)    amongst [bigdecimal-1.2.5, bigdecimal-1.1.0, bundler-1.7.6, bundler-unload-1.0.2, executable-   hooks-1.3.2, gem-wrappers-1.2.7, io-console-0.4.2, io-console-0.3, json-1.8.1, json-1.5.5,    minitest-5.4.3, minitest-2.5.1, rake-10.3.2, rake-0.9.2.2, rdoc-4.1.2, rdoc-3.9.5, rubygems-   bundler-1.4.4, rubygems-update-2.4.4, rvm-1.11.3.9] (Gem::LoadError)
    from /usr/lib/ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
    from /usr/lib/ruby/1.9.1/rubygems.rb:1231:in `gem'
    from /usr/local/bin/jekyll:22:in `<main>'

似乎我在使用 gem 时遇到了错误。当我运行gem list 时,我得到:

[05:31 PM] [~] $ gem list

*** LOCAL GEMS ***

bigdecimal (1.2.5, 1.1.0)
bundler (1.7.6)
bundler-unload (1.0.2)
executable-hooks (1.3.2)
gem-wrappers (1.2.7)
io-console (0.4.2, 0.3)
json (1.8.1, 1.5.5)
minitest (5.4.3, 2.5.1)
rake (10.3.2, 0.9.2.2)
rdoc (4.1.2, 3.9.5)
rubygems-bundler (1.4.4)
rubygems-update (2.4.4)
rvm (1.11.3.9)

Jekyll 甚至不在列表中。我已经尝试了几乎所有可以在网上找到的东西,但我束手无策。

如何让 Jekyll 命令被识别?

【问题讨论】:

    标签: ruby ubuntu gem jekyll


    【解决方案1】:

    我们有两条明显矛盾的信息。一方面,安装了 jekyll,因为命令 jekyll -v 被识别。另一方面,您得到的错误和gem list 输出都告诉我们您的特定版本的Ruby 没有安装jekyll。

    您有几个问题需要解决:

    1. 操作系统与 Gem
    2. Ruby 版本

    以下是您可以尝试解决的方法:

    1. 卸载 apt-get 版本的 jekyll。
    2. 运行jekyll -v 以验证您是否收到命令未找到错误。如果它仍然是可识别的命令,请运行 which jekyllsudo find / -name jekyll 以找出正在执行的命令。
    3. 随着 jekyll 的消失,运行 ruby -v 并记下您正在使用的版本。
    4. 使用gem install jekyll 安装jekyll(如有必要,添加sudo)。
    5. 如果您已关闭 shell 或切换到其他目录,请再次运行 ruby -v 以确保您使用的版本与以前相同。
    6. 运行gem list,这次它应该在那里。
    7. 再次运行jekyll -v,它应该可以工作了。

    【讨论】:

    • 在 audo apt-get purge jekyll 之后,我仍然遇到同样的错误。在 find / -name jekyll 之后,我注意到 /usr/local/bin/jekyll 由于某种原因仍然存在。在 rm -rf'ing 目录并从 3. 开始之后,这似乎有效。谢谢
    • 按照步骤操作。似乎仍然不起作用。删除文件并重新安装 jekyll。安装后得到以下命令: 成功安装了 jekyll-2.5.3 1 gem installed 正在安装 jekyll-2.5.3 的 ri 文档... 正在为 jekyll-2.5.3 安装 RDoc 文档... 但是 gem 列表没有显示 jekyll gem在那里。
    猜你喜欢
    • 2016-04-03
    • 2015-04-06
    • 2014-11-24
    • 2015-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多