Пользователь MacOS здесь. Я пытаюсь создать веб-сайт, размещенный на GitHub. Следовал инструкциям этого сайта , но использовал другую тему Jekyll. Когда я пытаюсь просмотреть свой веб-сайт локально через
bundle exec jekyll serve
Я получаю следующую ошибку:
Не удалось найти пакетник (2.5.7), необходимый для вашего /Users/ad/Desktop/Website/Gemfile.lock. (Gem::GemNotFoundException) Чтобы обновиться до последней версии, установленной в вашей системе, запустите
bundle update --bundler
. Чтобы установить недостающую версию, запуститеgem install bundler:2.5.7
Когда я пробую bundle update --bundler
, он говорит
С этим файлом блокировки вы должны использовать Bundler 2 или более позднюю версию.
Моя версия бандлера — Bundler version 1.17.2
.
Как мне заставить bundle exec jekyll serve
бегать?
Я попытался установить вторую версию Ruby с помощью доморощенного, так как прочитал, что невозможно обновить предустановленную версию Ruby для MacOS. ruby-install -V
дает ruby-install: 0.9.3
.
Однако chruby -h
дает zsh: command not found: chruby
.
Когда я использую open -e ~/.zshrc
, я получаю
источник /usr/local/opt/chruby/share/chruby/chruby.sh
источник /usr/local/opt/chruby/share/chruby/auto.sh
chruby Ruby-3.3.3.
Пожалуйста помоги...
@Stefan Как мне тогда удалить Chruby?
brew uninstall chruby
или, если вы установили его вручную, см. README.md#uninstallЕсть разные способы, но я делаю следующее:
Установите https://brew.sh (менеджер пакетов для macOS)
Установите rbenv (менеджер версий для разных версий Ruby)
brew install rbenv
echo 'eval "$(rbenv init - zsh)"' > ~/.zshrc
Откройте новый терминал и cd
в свой репозиторий.
Создайте в своем репозитории файл с именем .ruby-version
и содержимым 3.3.3
(или любую версию Ruby, которую вы хотите запустить)
rbenv install
(после этого ruby -v
должно напечатать 3.3.3)
bundle install
(установите Jekyll и его зависимости)
bundle exec jekyll serve
(запустите свой сервер разработки)
Спасибо! После запуска bundle exec jekyll serve
появляются различные сообщения об ошибках, например. Jekyll 4.3.3 Please append
--trace` к команде serve
для получения дополнительной информации или обратной трассировки.` Неудивительно, что открытие «localhost:4000» выдает «Safari не может открыть страницу». Есть идеи?
С тем же кодом, который отлично работает на страницах GitHub? Возможно, это означает, что Ruby/bundler/jekyll работает корректно, но в коде вашего сайта есть ошибки? какие ошибки?
Я понял это сам. Мне пришлось установить несколько вещей. Теперь это работает!
Не используйте доморощенный вариант для установки Ruby, если вы собираетесь использовать chruby/ruby-install. Аналогично, придерживайтесь одного менеджера версий Ruby. Установка нескольких менеджеров версий (например, chruby и rbenv) обычно не работает.