Jekyll-команда не найдена

Я пытаюсь получить Джекил работает, но у меня нет опыта работы с Ruby.
Насколько я могу судить, установка Джекила удалась.
Однако:

$ jekyll

выдает ошибку:

-bash: jekyll: command not found

это gem env результат:

  - RUBYGEMS VERSION: 1.3.4
  - RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin10.0]
  - INSTALLATION DIRECTORY: /Volumes/HDD/DADU/gems
  - RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
  - EXECUTABLE DIRECTORY: /Volumes/HDD/DADU/gems/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - universal-darwin-10
  - GEM PATHS:
     - /Volumes/HDD/DADU/gems
     - /Volumes/HDD/DADU/.gem/ruby/1.8
     - /Library/Ruby/Gems/1.8
     - /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://gems.rubyforge.org/

и я нашел следующие пути, ведущие к "чему-то" Джекилу:

  • ~.gem/ruby/1.8/gems/jekyll-0.11.0/lib/jekyll.rb
  • ~.gem/ruby/1.8/gems/bin/jekyll (файл exec)

11 ответов


самый простой способ сделать это-использовать RVM. Он управляет Ruby и всеми его драгоценными камнями для вас, и он прост в использовании. Смотрите это ссылке для его использования.

если вы не хотите использовать это, вам нужно будет изменить переменные пути, чтобы он мог найти ваши драгоценные камни. Я нашел это утомительным и вернулся к RVM, но вот общие шаги.

вам нужно будет узнать, где устанавливаются ваши драгоценные камни. Если вы сделали gem install ... драгоценные камни будут в ~/.gem/ruby/1.8/gems/bin, Если вы используете sudo gem install ... драгоценные камни будут где-то в /System/Library/Frameworks/Ruby.framework/Versions/1.8/Resources

вы должны добавить этот путь к переменной PATH. Самый простой способ сделать это-запустить : echo 'PATH=$PATH:above/path/to/gems' >> ~/.bash_profile


для других, приходящих сюда со следующей настройкой:

OS X + квасЭд установка ruby + (возможно) zsh

я понял, что проблема в том, что после установки Джекил по состоянию на инструкции, gem устанавливает драгоценный камень jekyll в квас погреб, а не там, где обычно ожидает ОС (что-то было в каталоге gem для ruby).

так, все, что здесь требовалось, - это выяснить, где находится квас установка ruby устанавливает драгоценные камни, найдите двоичный файл jekyll и создайте символическую ссылку на него в /usr/bin.

вот шаги, которые я предпринял, чтобы исправить это:

  1. тип gem env искать ДРАГОЦЕННЫЕ ПУТИ. Для меня это было:

    /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/gems/1.9.1.

  2. убедитесь, что вы можете увидеть jekyll двоичный файл в каталог с 1 выше и скопируйте его путь (если вы не можете, найдите любые другие пути, перечисленные в ДРАГОЦЕННЫЕ ПУТИ за это). Для меня это было:

    /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/bin/jekyll

  3. используйте путь от шага 2 выше, чтобы создать символическую ссылку на /usr/bin/jekyll. Я сделал это, набрав это (вам понадобится sudo для создания символической ссылки):

    cd /usr/bin && ln -s /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/bin/jekyll jekyll

теперь все должно быть весело, если вы наберете jekyll.


Если вы используете RBENV вместо RVM, вам просто нужно запустить rehash в командной строке после установки jekyll:

rbenv rehash

может быть, немного поздно, но... У меня были некоторые проблемы с установкой Jekyll на Ubuntu и попробовал все, что люди ответили в этой теме - К сожалению, ничего не получилось.
Затем я посмотрел видео на сайте Jekyll и после установки всего пакета ruby снова,sudo gem install jekyll работали.

попробуйте это прежде всего:

sudo apt-get update

sudo apt-get install ruby-full

sudo gem install jekyll

jekyll -v

это кажется довольно простым, но он работает на Ubuntu.


одним из решений может быть редактирование ~/.bashrc file и добавьте эту строку:

PATH=$PATH:~/.gem/ruby/1.8/gems/bin

добавить ~/.gem/ruby/1.8/gems/bin в пути поиска Bash.

открыть терминал и он должен работать. Или вы можете использовать следующую команду:

. ~/.bashrc


следующие шаги решили мою проблему

gem uninstall jekyll
sudo gem install jekyll

открыть ~/.bash_profile и добавьте этот код в последней строке

export PATH=$PATH:/usr/local/lib/ruby/gems/1.9.1/gems/jekyll-2.5.2/bin

сохранить и закрыть .bash_profile

закройте и снова откройте терминал mac, попробуйте запустить jekyll Теперь он должен работать


Jekyll-это ruby gem : Ruby gems в linux, например, находятся в /var/lib/gems / 1.8, как видно из вывода "ruby env".

таким образом, вам нужно добавить исполняемые файлы в этот каталог к вашему пути.

В общем, если рубиновый камень "не найден" вашей ОС, он просто указывает, что либо

1) у вас нет установленного драгоценного камня или

2) у вас нет камень установлен в каталог на вашем пути.

Я обнаружил, что было несколько проблем с установкой ruby и ruby gems на linux (я обнаружил, что это может быть сложно на Ubuntu v10, и подтвердил это с Ruby folks на IRC). Таким образом, такие инструменты, как RVM или rbenv, могут быть лучшим подходом к настройке стабильной, поддерживаемой среды ruby.


@jayunit100,

я сталкиваюсь с той же проблемой с блогом Jekyll. Я установил gem через RVM в каталог блога и _config.файл yml говорит, что он должен генерировать в блог/_site. Это так же просто, как добавить блог в путь или есть что-то еще, что я пропустил?

обновление: мое плохое, я не камень установлен. Урок усвоен:rvm requirements и brew doctor есть ли причина-перед установкой stuff ИСПОЛЬЗОВАТЬ ИХ


проще, чем создать символическую ссылку, просто установите ее правильно. Если у вас есть ошибки разрешения, как многие люди получают при попытке использовать

gem install jekyll

вместо того, чтобы использовать

sudo gem install jekyll

В моем случае мне пришлось бежать bundle install --force

затем bundle exec jekyll serve работает, а jekyll serve все еще не делает. Кажется, теперь мне придется идти с первым...


Если вы используете MacOS, из руководство по устранению неисправностей:

Jekyll & Mac OS X 10.11 Постоянная ссылка

С введением защиты целостности системы несколько каталогов, которые ранее были доступны для записи, теперь считаются системными местоположениями и больше не доступны. Учитывая эти изменения, есть несколько простых способов встать и бежать. Один из вариантов-изменить место, где будет установлен драгоценный камень (опять же, используя sudo только при необходимости):

$ gem install -n /usr/local/bin jekyll