Мой тег Liquid не распознается страницами GitHub

Я использовал 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 поддерживают драгоценные камни: страницы.github.com/версии

David Jacquel 03.02.2019 08:47
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
1
1 896
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Поскольку GitHub Pages поддерживает только ограниченный набор Ruby Gems (https://pages.github.com/версии/), рекомендуемым способом является локальная сборка и отправка содержимого папки назначения (по умолчанию ./_site) на удаленный сервер для хостинга.
Однако для этого требуется немного работы по настройке, поскольку у вас уже настроен репозиторий для сборки из ветки master.

Маршрут относительно легче будет заключаться в том, чтобы полностью отказаться от страниц GitHub для стороннего игрока, такого как Нетлайф, Клаудканнон и т. д., в зависимости от вашего варианта использования.

Netlify развернуть подводные камни

  • Для jekyll-katex-0.3.0 требуется по крайней мере версия Ruby 2.5.1. Итак, вам нужно настроить Netlify для использования этой версии. Самый простой способ — определить переменную среды RUBY_VERSION со значением 2.5.1.
  • Еще одна проблема — версия Bundler. Похоже, что Netlify не использует/не устанавливает Bundler-2.0. Итак, либо
    • создать Gemfile.lock локально, используя более старую версию Bundler, или
    • Удалите существующий Gemfile.lock из репозитория. (Добавление Gemfile.lock в файл .gitignore предотвратит его повторную фиксацию).
  • Netlify не работает с конфигурацией baseurl, как ожидалось. Вам нужно будет установить его на пустую строку или null

Спасибо, ашмароли. Я попробовал ваш метод, но он не работает. В cloudcannon не удалось выполнить сборку jekyll. В Netlify выполнить развертывание не удалось.

Jun Wang 04.02.2019 11:25

Что такое сообщение об ошибке в журнале развертывания Netlify?

ashmaroli 04.02.2019 11:35

Я обновил свой оригинальный пост, см. выше.

Jun Wang 04.02.2019 18:18

Ошибка связана с несоответствием версии Bundler. Вы можете обойти это, удалив Gemfile.lock из своего репозитория.

ashmaroli 04.02.2019 20:33

Я удалил Gemfile.lock, стало лучше, но все еще есть ошибка зависимости: Yikes! Похоже, у вас не установлен jekyll-katex или одна из его зависимостей. Чтобы использовать Jekyll в текущей конфигурации, вам необходимо установить этот гем. Полное сообщение об ошибке от Ruby: «невозможно загрузить такой файл -- jekyll-katex». Если у вас возникнут проблемы, вы можете найти полезные ресурсы по адресу jekyllrb.com/help!

Jun Wang 05.02.2019 12:11

У вас есть две группы :jekyll_plugins в вашем Gemfile. Возможно, объединение их в одно поможет. Кроме того, вы можете получить обратную трассировку ошибок при запуске сборки с помощью --trace, т.е. bundle exec jekyll build --trace.

ashmaroli 05.02.2019 14:45

Спасибо, ashmaroli, теперь мой сайт развернут. Но когда я нажимаю на свой пост с моей домашней страницы, он говорит: «Страница 404 не найдена :(»

Jun Wang 07.02.2019 03:28

Это другой вопрос. Я не смогу выполнять отладку, пока не получу URL-адрес вашего опубликованного сайта.

ashmaroli 07.02.2019 09:22

Получается, что я должен использовать Bundler 2.0. Если я использую более старую версию Bundler, мой локальный сайт вообще не работает.

Jun Wang 07.02.2019 16:01

Хорошо. По какой-то причине Netlify не работает с baseurl: '/Blog'. Итак, я бы рекомендовал сбросить его и url на пустые строки. то есть baseurl: "", url: ""

ashmaroli 07.02.2019 18:07

Спасибо, ашмароли. Я просто оставлю проблему там. Возможно, через несколько месяцев GitHub будет поддерживать Jekyll 3.8.0. Спасибо за вашу помощь.

Jun Wang 08.02.2019 03:41

Пожалуйста. В то время как страницы GitHub мая будут поддерживать Jekyll 3.8 в будущем, есть очень маленький шанс, что они будут поддерживать плагин jekyll-katex. Так что можно поискать альтернативные маршруты.

ashmaroli 08.02.2019 07:45
Ответ принят как подходящий

Моя проблема решена, НАКОНЕЦ. Я использовал другой статический генератор Hexo с потрясающей темой «Next», и он отлично работает с KaTeX.

Снимок моего сайта

Мой сайт

Два основных шага для решения проблемы:

Шаг 1. Установите Hexo и разверните мой сайт на GitHub.

Шаг 2. Встройте KaTex

На каждом этапе есть некоторые детали. Я написал два поста: Шаг 1, ‼Шаг 2.

Другие вопросы по теме