记一次坑爹的Nuxt build持续running,成功后无法正确退出的错误(很可能是@nuxt/content干得好事)
## 起因 老狗有一个使用 `nuxt3` 开发的全站项目,起初一切都是正常的,直到老狗为其增加了博
渲染中...
## 起因 老狗有一个使用 `nuxt3` 开发的全站项目,起初一切都是正常的,直到老狗为其增加了博客功能。 增加博客,老狗采用的是 `@nuxt/content` + `markdown文件` 的方式,因为其简单通用,直接从原有项目中拿一套代码过来既可开始使用。 但这次的使用,不知道为什么提示 使用 `@nuxt/content` 必须安装 `better-sqlite3`,老狗看了原有项目,是没有安装该依赖的,但不知为什么,这次提示必须安装,好吧那就安装(虽然不知道是不是安装这个依赖的问题,但是这缺失是一个反常点,所以记录一下)。 安装调试一切正常,开始打包,然后就出现问题了。 <!-- more --> ## 异常现象 由于老狗习惯使用docker构建镜像部署,所以一如往常开始构建,但这测构建异常的慢,刚开始老狗以为这只是国内网络环境的正常现象(懂得都懂),但经过各种尝试后,发现事情不对劲! 每次都会在执行 `npm run build` 时卡住!且有一次甚至等待超过半小时,还是没完成!!!!!!!!!! 查看构建日志,发现其实 `build` 已经成功了才对!因为已经输出了下面的日志,但不知道为什么,也是每次都在输出这段日志后,就“**永远**”地卡住了!!! ```log ✔ You can preview this build using node .output/server/index.mjs ``` 后续我尝试本地开发环境运行 `npm run build` ,也是出现了一样的问题!去网上查资料,没有找到任何相关资料。。。 没办法,只能自己排查解决了。 ## 草草了事(解决不了问题,就解决提出问题的人👻) 但无论如何查看日志,也都一切正常,所以这看起来并不是什么简单的问题了,没办法,老狗只能思考最近对项目做了什么(因为这次开发工作前,打包还是正常的),思来想去,也只有可能是因为博客功能相关的改动,而涉及项目底层的,也可能是 `@nuxt/content` `better-sqlite3` 这两个依赖了。 排除掉所有不可能,那剩下的唯一选项就是真相! **删掉 `@nuxt/content` `better-sqlite3`,重新打包,果然成功了!!!!!!!!(气死)** ## 后记 本次问题,目前看来只能是 `@nuxt/content` `better-sqlite3` 中的其中一个影响了构建过程的正确退出,至于底层原因,有懂得大佬欢迎科普! 如果你也遇到这个问题,并且有空的话,可以考虑给 `@nuxt/content` 提交 Issue 吧,老狗最近是没有这个闲工夫,为了项目的正常运行,那就现委屈博客功能晚点再上线吧(毕竟还有其他功能改动需要升级)。。。
END
评论
登录后查看和发表评论
前往登录