win10 virtualbox yarn 安装报错问题
2023-04-15 本文已影响0人
码农工号9527
事情起因:今天闲来无事,偶尔看到了个项目, go-admin,打算尝试安装下,看看使用效果,然后发现前端项目安装报错,始终安装不起来,报错如下:
error An unexpected error occurred: "EPROTO: protocol error, symlink '../../../parser/bin/babel-parser.js' -> '/data/Work/goadmin/go-admin-ui/node_modules/@babel/core/node_modules/.bin/parser'".
info If you think this is a bug, please open a bug report with the information provided in "/data/Work/goadmin/go-admin-ui/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
然后面向百度编了下,说是在后面直接加yarn
后面直接加--no-bin-links
就行了,然后就试了下,发现确实没报错了
[root@localhost go-admin-ui]# yarn install --no-bin-links
yarn install v1.22.19
info No lockfile found.
[1/5] Validating package.json...
...一堆其他打印,此处忽略...
[5/5] Building fresh packages...
success Saved lockfile.
Done in 43.38s.
然后兴奋的往下敲命令,发现又遇到了新问题
[root@localhost go-admin-ui]# npm run dev
> go-admin@2.0.9 dev
> vue-cli-service serve
ERROR TypeError: transpileDependencies.map is not a function
TypeError: transpileDependencies.map is not a function
at genTranspileDepRegex (/data/Work/goadmin/go-admin-ui/node_modules/@vue/cli-plugin-babel/index.js:6:38)
at module.exports (/data/Work/goadmin/go-admin-ui/node_modules/@vue/cli-plugin-babel/index.js:22:29)
at /usr/local/node/node-v16.13.1-linux-x64/lib/node_modules/@vue/cli-service/lib/Service.js:82:9
at Array.forEach (<anonymous>)
at loadedCallback (/usr/local/node/node-v16.13.1-linux-x64/lib/node_modules/@vue/cli-service/lib/Service.js:80:20)
at Service.init (/usr/local/node/node-v16.13.1-linux-x64/lib/node_modules/@vue/cli-service/lib/Service.js:97:14)
at Service.run (/usr/local/node/node-v16.13.1-linux-x64/lib/node_modules/@vue/cli-service/lib/Service.js:247:16)
at Object.<anonymous> (/usr/local/node/node-v16.13.1-linux-x64/lib/node_modules/@vue/cli-service/bin/vue-cli-service.js:37:9)
at Module._compile (node:internal/modules/cjs/loader:1101:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
百度了一通,大多说是安装的有问题,需要移除node_modules,重新安装,但是移除后,再次使用yarn install --no-bin-links
还是一个鸟样,猜测应该是加了--no-bin-links
这个导致的,但是不加它的话又不行,安装都安装不了了,直接死循环。
思来想去想着应该是node版本问题,官方文档要求版本是 node-v14.16.0
版本,
![](https://img.haomeiwen.com/i16255509/d20706cce1e6281e.png)
而我目前的版本是
node-v14.17.0
,所以想着是不是这个版本问题,所以换了下 14.16.0 版本的,发现还是不行,然后再次试试看用高点的版本,安装了v16.13.1
,还是不行。
然后偶然看到这篇文章,win10 的 homstead 虚拟机使用 yarn add china-area-data 时报错, 解决方案。,突然想的我的也可能是这个问题,共享目录无法使用软链。我目前用的是win10电脑,然后用 virtualbox 虚拟机,采用共享目录,映射win10的某个目录到虚拟机里面去了,然后当前代码所在目录就是在共享目录上面,安装操作是在虚拟机上面捣鼓的,然后就换了个共享目录外的其他目录,发现没问题了。
总结: win 下 virtualbox 虚拟机环境,npm、yarn 等等安装前端项目,不要把项目丢到共享目录上面安装操作,否则就会碰到这种摸不着头脑的问题。