Я использовал Jekyll 3.8.5 и создал блог на GitHub. Я также использовал Джекилл-Катекс 0.3.0, плагин Jekyll для простого математического рендеринга на стороне сервера через KaTeX. На моей локальной машине все работает нормально. Но когда я отправил его на GitHub, я получил следующее: «У вашего сайта проблемы со сборкой: тег Katexmm в строке 11 в _posts/2019-01-22-ECDSA-and-Bitcoin-I.md не является распознанным тегом Liquid. ."
«Katexmm» — это жидкая метка Jekyll-Katex, поэтому я проверил зависимости. Jekyll-Katex 0.3.0 требует Jekyll ~> 3.8, а GitHub Pages использует Jekyll 3.7.4. Думаю, в этом проблема.
Что мне делать? Еще одно: я хочу использовать "katexmm", пожалуйста, не предлагайте мне использовать Jekyll 3.7.4 вместо 3.8.5. Заранее спасибо.
Я последовал предложению ашмароли, но все равно не работает. Я попробовал Nelify и «Ошибка развертывания»:
11:31:01 AM: Build ready to start
11:31:03 AM: build-image version: 84aca9ba39e0ee86ba194760fbfc51a808f62543
11:31:04 AM: buildbot version: 57d44fd1631cc3fff8b38fbaf88d3d04f946418a
11:31:04 AM: Fetching cached dependencies
11:31:04 AM: Starting to download cache of 254.7KB
11:31:04 AM: Finished downloading cache in 147.184771ms
11:31:04 AM: Starting to extract cache
11:31:04 AM: Failed to fetch cache, continuing with build
11:31:04 AM: Starting to prepare the repo for build
11:31:04 AM: No cached dependencies found. Cloning fresh repo
11:31:04 AM: git clone https://github.com/Jun-Wang-2018/Blog
11:31:05 AM: Preparing Git Reference refs/heads/gh-pages
11:31:06 AM: Starting build script
11:31:06 AM: Installing dependencies
11:31:08 AM: Downloading and installing node v8.15.0...
11:31:08 AM: Downloading https://nodejs.org/dist/v8.15.0/node-v8.15.0-linux-x64.tar.xz...
11:31:08 AM: 0.0%
11:31:08 AM:
######
11:31:08 AM: 8.4%
11:31:08 AM:
#############################################
11:31:08 AM: ### 66.8%
11:31:08 AM:
######################################
11:31:08 AM: ################################## 100.0%
11:31:08 AM: Computing checksum with sha256sum
11:31:08 AM: Checksums matched!
11:31:11 AM: Now using node v8.15.0 (npm v6.4.1)
11:31:12 AM: Attempting ruby version 2.3.6, read from environment
11:31:13 AM: Using ruby version 2.3.6
11:31:15 AM: Using PHP version 5.6
11:31:15 AM: Started restoring cached ruby gems
11:31:15 AM: Finished restoring cached ruby gems
11:31:15 AM: Installing gem bundle
11:31:15 AM: You must use Bundler 2 or greater with this lockfile.
11:31:15 AM: Error during gem install
11:31:15 AM: Error running command: Build script returned non-zero exit code: 1
11:31:15 AM: Failing build: Failed to build site
11:31:15 AM: failed during stage 'building site': Build script returned non-zero exit code: 1
11:31:15 AM: Finished processing build request in 11.629358799sЯ попробовал Cloudcannon и «Сборка Jekyll не удалась»:
Syncing raw files... done
Checking existing local bundle state... failed
Loading gem cache...
Checking gem cache (bundle_cache/A16MrNFnrU9wWPnsPr5G8PkR_kBFEHG0ytrPjGtZ7mQ.zip)... no cache
$ export JEKYLL_ENV = "production"
$ ruby -v
ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-linux]
$ bundle -v
Bundler version 1.16.6
$ bundle config --global jobs 4
Configured concurrent installs!
$ bundle install
Using local cacheable path...
You must use Bundler 2 or greater with this lockfile.




Поскольку GitHub Pages поддерживает только ограниченный набор Ruby Gems (https://pages.github.com/версии/), рекомендуемым способом является локальная сборка и отправка содержимого папки назначения (по умолчанию ./_site) на удаленный сервер для хостинга.
Однако для этого требуется немного работы по настройке, поскольку у вас уже настроен репозиторий для сборки из ветки master.
Маршрут относительно легче будет заключаться в том, чтобы полностью отказаться от страниц GitHub для стороннего игрока, такого как Нетлайф, Клаудканнон и т. д., в зависимости от вашего варианта использования.
jekyll-katex-0.3.0 требуется по крайней мере версия Ruby 2.5.1. Итак, вам нужно настроить Netlify для использования этой версии. Самый простой способ — определить переменную среды RUBY_VERSION со значением 2.5.1.Bundler-2.0. Итак, либо
Gemfile.lock локально, используя более старую версию Bundler, илиGemfile.lock из репозитория. (Добавление Gemfile.lock в файл .gitignore предотвратит его повторную фиксацию).baseurl, как ожидалось. Вам нужно будет установить его на пустую строку или nullСпасибо, ашмароли. Я попробовал ваш метод, но он не работает. В cloudcannon не удалось выполнить сборку jekyll. В Netlify выполнить развертывание не удалось.
Что такое сообщение об ошибке в журнале развертывания Netlify?
Я обновил свой оригинальный пост, см. выше.
Ошибка связана с несоответствием версии Bundler. Вы можете обойти это, удалив Gemfile.lock из своего репозитория.
Я удалил Gemfile.lock, стало лучше, но все еще есть ошибка зависимости: Yikes! Похоже, у вас не установлен jekyll-katex или одна из его зависимостей. Чтобы использовать Jekyll в текущей конфигурации, вам необходимо установить этот гем. Полное сообщение об ошибке от Ruby: «невозможно загрузить такой файл -- jekyll-katex». Если у вас возникнут проблемы, вы можете найти полезные ресурсы по адресу jekyllrb.com/help!
У вас есть две группы :jekyll_plugins в вашем Gemfile. Возможно, объединение их в одно поможет. Кроме того, вы можете получить обратную трассировку ошибок при запуске сборки с помощью --trace, т.е. bundle exec jekyll build --trace.
Спасибо, ashmaroli, теперь мой сайт развернут. Но когда я нажимаю на свой пост с моей домашней страницы, он говорит: «Страница 404 не найдена :(»
Это другой вопрос. Я не смогу выполнять отладку, пока не получу URL-адрес вашего опубликованного сайта.
Получается, что я должен использовать Bundler 2.0. Если я использую более старую версию Bundler, мой локальный сайт вообще не работает.
Хорошо. По какой-то причине Netlify не работает с baseurl: '/Blog'. Итак, я бы рекомендовал сбросить его и url на пустые строки. то есть baseurl: "", url: ""
Спасибо, ашмароли. Я просто оставлю проблему там. Возможно, через несколько месяцев GitHub будет поддерживать Jekyll 3.8.0. Спасибо за вашу помощь.
Пожалуйста. В то время как страницы GitHub мая будут поддерживать Jekyll 3.8 в будущем, есть очень маленький шанс, что они будут поддерживать плагин jekyll-katex. Так что можно поискать альтернативные маршруты.
Моя проблема решена, НАКОНЕЦ. Я использовал другой статический генератор Hexo с потрясающей темой «Next», и он отлично работает с KaTeX.
Два основных шага для решения проблемы:
Шаг 1. Установите Hexo и разверните мой сайт на GitHub.
Шаг 2. Встройте KaTex
На каждом этапе есть некоторые детали. Я написал два поста: Шаг 1, ‼Шаг 2.
Страницы Github поддерживают драгоценные камни: страницы.github.com/версии