WSL中运行yarn dev报错:工作目录不是绝对路径如何解决?
问题根因
这个报错是低版本esbuild的路径校验逻辑对WSL跨系统挂载的NTFS路径兼容缺陷导致的,可按以下步骤排查解决:
排查&解决步骤
步骤1:升级esbuild依赖版本
0.13.0以下版本的esbuild内置的绝对路径判断逻辑存在bug,会将/mnt/开头的WSL挂载路径误判为非绝对路径。直接在WSL终端执行以下命令升级项目内的esbuild即可:yarn add esbuild -D步骤2:重新在WSL环境安装依赖
如果之前是在Windows系统下执行的依赖安装,node_modules中会包含Windows平台的esbuild二进制文件,在WSL Linux环境运行会触发路径兼容问题。先删除现有依赖文件再重新安装即可:rm -rf node_modules yarn.lock yarn install步骤3:规避跨挂载运行(可选,性能更好)
如果以上操作都无效,可以直接将项目从Windows F盘移动到WSL的Linux文件系统目录(比如/home/你的用户名/路径下)运行,完全避开跨系统挂载的兼容问题,同时项目读写、编译速度也会有明显提升。
内容的提问来源于stack exchange,提问作者Golden
相关产品推荐
相关产品推荐

