hexo 主题 fluid:Error:Cannot find module 'css'
本文最后更新于:2023年6月8日星期四下午3点33分
问题描述
许久没有更新博客,心血来潮,再来一次。先去 github 看了看,发现有依赖更新了,于是一顿操作后更新了。
结果跑持续集成时报错,报错情况如下:
INFO Validating config
ERROR Script load failed: themes\fluid\scripts\events\lib\highlight.js
Error: Cannot find module 'css'
Require stack:
......
更新了的依赖为:
- hexo-renderer-stylus
- hexo-blog-encrypt
- hexo-renderer-marked
查看错误位置:
'use strict';
const fs = require('fs');
const css = require('css');
const objUtil = require('../../utils/object');
const resolveModule = require('../../utils/resolve');
确实有一部分为 css
,不过怎么会找不到涅。不是很明白。
解决
经过一番操作,如更新依赖,更新主题啥啥啥的,还是无法解决。
最终在搜索引擎的帮助下,找到了,fluid 主题 github 仓库的 issues
,发现有人遇到了同样的问题。
ERROR Script load failed: themes\fluid\scripts\events\lib\highlight.js
在此中,主题作者zkqiang解释道:
This is because the new version of hexo-renderer-stylus no longer includes css module (stylus/stylus@043d404)
即,新版本的 hexo-renderer-stylus 不再包含 css 模块。,详见:stylus/stylus@043d404
。
有人就提出了解决办法,安装 css
:
npm install css --save
尝试后,成功解决问题,Nice。
碎碎念
作者在 develop
分支中进行了修改:
- 修改文件:
scripts/events/lib/highlight.js
- 删除代码:
const css = require('css');
- 添加代码:
let css; try { css = require('css'); } catch (error) { if (error.code === 'MODULE_NOT_FOUND') { css = require('@adobe/css-tools'); } else { throw error; } }
没升级 hexo-renderer-stylus 就使用 css = require('css');
,反之,css = require('@adobe/css-tools');
。
不过咱这就还是自己安装 css 吧。
hexo 主题 fluid:Error:Cannot find module 'css'
https://muxiner.github.io/cannot-find-module-css/