Моя метка Liquid не распознается страницами GitHub
Я использовал Jekyll 3.8.5 и создал блог на GitHub. Я также использовал Jekyll-Katex 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.
2 ответа
Моя проблема решена, НАКОНЕЦ. Я использовал другой статический генератор Hexo с потрясающей темой "Next", и он прекрасно работает с KaTeX.
Два основных шага для решения проблемы:
Шаг 1. Установите Hexo и разверните мой сайт на GitHub
Шаг 2. Вставить KaTex
Есть некоторые детали в каждом шаге. Я написал два поста: Шаг 1, Шаг 2.
Поскольку GitHub Pages поддерживает только ограниченный набор Ruby Gems ( https://pages.github.com/versions/), рекомендуемый способ - создать локально и передать содержимое вашей целевой папки (./_site
по умолчанию) на ваш пульт для хостинга.
Однако для этого необходимо немного поработать, поскольку у вас уже есть хранилище, настроенное для сборки из master
ветка.
Относительно более простым способом было бы полностью отказаться от GitHub Pages для стороннего игрока, такого как Netlify, Cloudcannon и т. Д., В зависимости от вашего варианта использования.
Netlify Deploy Gotchas
jekyll-katex-0.3.0
требуется хотя бы версия Ruby2.5.1
, Итак, вам нужно настроить Netlify для использования этой версии. Самый простой способ - определить переменную средыRUBY_VERSION
со значением, установленным на2.5.1
- Еще одна проблема - версия Bundler.NETlify, кажется, не использует / устанавливает
Bundler-2.0
, Так что либо- генерировать
Gemfile.lock
локально, используя более старую версию Bundler, или - Удалить существующий
Gemfile.lock
из хранилища. (Добавление Gemfile.lock в.gitignore
файл будет препятствовать тому, чтобы это было передано назад).
- генерировать
- Netlify, похоже, не работает с
baseurl
Конфиг, как и ожидалось. Вам придется установить его на пустую строку илиnull