windows系统下,运行 create-umi 报错“文件名、目录名或卷标语法不正确”

(文章首发于简书(https://www.jianshu.com/p/1d5dc309a586 ))
这个坑踩几次了,为了避免之后再踩,还是记下来备忘吧。

照着官网文档的“项目实战”,运行第一句命令就报错了,如下:

E:\practice\createUmi>yarn create umi
yarn create v1.16.0
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...

success Installed "[email protected]" with binaries:
- create-umi
文件名、目录名或卷标语法不正确。
error Command failed.
Exit code: 1
Command: D:\Program\nodejs\node_modules\bin\create-umi
Arguments:
Directory: E:\practice\createUmi
Output:

info Visit https://yarnpkg.com/en/docs/cli/create for documentation about this command.

这真的很让人奔溃。。。

于是我找到“D:\Program\nodejs\node_modules\bin\”目录下的 create-umi.cmd,内容如下:

@"%~dp0\C:\Users\PC\AppData\Local\Yarn\Data\global\node_modules\.bin\create-umi.cmd"   %*

然后就大概猜到是什么问题了,就是这个路径的问题,在windows系统下,盘符前哪里还需要什么 ‘%~dp0’ 符号,所以果断将 C: 盘符前的符号删了,如下:

@"C:\Users\PC\AppData\Local\Yarn\Data\global\node_modules\.bin\create-umi.cmd"   %*

保存后,重新运行一下 "create-umi"命令,就可以正常运行了。


补充:如果运行 ‘create-umi’ 命令,提示“不是内部或外部命令”,原因是没有把 “D:\Program\nodejs\node_modules\bin” 路径加入系统的 path 环境变量中,加入之后,重新打开命令行,就可以解决问题了。


注意:
修改了 create-umi.cmd 之后,不要再运行 yarn create umi,因为这会重新安装一次,然后就把你改的文件覆盖了。
修改 create-umi.cmd 之后
1、将 create-umi.cmd 所在的文件夹路径(我的是“D:\Program\nodejs\node_modules\bin”),加入系统环境变量 path 中;
2、重启命令行,之后直接在命令行运行 create-umi ,就可以了;

你可能感兴趣的:(web前端,umi,antd)