Docusaurus 2.3.1在Linux构建失败,Windows可正常构建
解决Docusaurus跨Windows/Linux构建失败的模块找不到问题
问题现象
- Windows 10环境下用Docusaurus 2.3.1构建项目完全正常,但CentOS 7.9环境构建时失败,核心报错:
Module not found: Error: Can't resolve '@site/src/components/ArtPlayer' in '/data/jenkins_home/workspace/Jerry-Docs/docs/Jerry-MC-Server/device_instruction' - 两边依赖版本接近:Node.js 16.x、Yarn 1.22.19,排除依赖版本差异导致的问题
根因
Windows文件系统是大小写不敏感的,写ArtPlayer或Artplayer都能匹配到实际的Artplayer目录;但Linux(包括CentOS)文件系统大小写严格敏感,引入路径里的ArtPlayer(结尾大写R)和实际目录名Artplayer(结尾小写r)不匹配,导致构建时找不到模块。
修复方案
任选一种即可:
- 改引入路径:在
auto-furnace.mdx里把组件引入语句的ArtPlayer改成Artplayer,和实际目录名大小写完全一致 - 改目录名:把
src/components/Artplayer重命名为ArtPlayer,和引入路径的大小写保持统一
验证
修改完成后在CentOS环境重新执行yarn build,确认构建成功,无模块找不到的错误。
内容的提问来源于stack exchange,提问作者Jerry
相关产品推荐
相关产品推荐

