Джекил - команда не найдена - PullRequest
28 голосов
/ 16 ноября 2011

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

$ 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 file)

Ответы [ 13 ]

1 голос
/ 09 мая 2012

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

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

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

1) У вас не установлен гем, либо

2) У вас нет установленного гема в каталоге, который находится на вашем пути.

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

0 голосов
/ 22 января 2019

Когда вы используете опцию --user-install, RubyGems установит гемы в каталог внутри вашего домашнего каталога, что-то вроде ~ / .gem / ruby ​​/ 1.9.1. Команды, предоставленные установленными вами камнями, будут в конечном итоге в ~ / .gem / ruby ​​/ 1.9.1 / bin. Чтобы установленные там программы были доступны для вас, вам нужно добавить ~ / .gem / ruby ​​/ 1.9.1 / bin в переменную среды PATH.

Например, если вы используете bash, вы можете добавить этот каталог в PATH, добавив такой код в ваш файл ~ / .bashrc:

if which ruby >/dev/null && which gem >/dev/null; then
    PATH="$(ruby -r rubygems -e 'puts Gem.user_dir')/bin:$PATH"
fi

https://guides.rubygems.org/faqs/#user-install

Я положил его в .bash_profile (Mac OS X).

https://hathaway.cc/2008/06/how-to-edit-your-path-environment-variables-on-mac/

0 голосов
/ 09 декабря 2017

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

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

...