今天下午遇到一个问题,废了好大的劲才解决,所以写了这篇傻瓜式文章,希望可以帮助到大家。
根据create-react-app工具创建react,前面几步一切正常,到了npm start这一步的时候,报了这样的错。
搜了很多文章,都说是Path环境变量有问题,让把%SystemRoot%\system32 加入到path变量中。
但是直接复制还是错的,这句话理解才可以使用。
理解这句话:
- %SystemRoot% 两个百分号之间夹着的是一个匹配变量
- %SystemRoot%\system32 表示system32文件所在的路径
所以说就是要把system32文件所在的路径添加到path环境变量中。大家可以找一下自己电脑里这个文件在什么地方,我的在C:\Windows\System32(一般都在这里)。
现在来一步一步解决问题:
1.打开控制面板,搜索系统,点击编辑系统环境变量
2.点击环境变量
3.环境变量里面包括用户环境变量系统的环境变量
系统环境变量对全部用户起作用,而用户环境变量仅仅对当前用户起作用。
我们直接在系统环境变量添加path值,点击编辑。
4.添加一条
C:\Windows\System32
现在就解决了问题,成功运行啦!还弹出了在3000端口运行的react。
虽然解决了问题,但是对原因好像还是云里雾里的。
搞懂它!
解释:
-
出错的原因?
这个问题一般不会出现,我这里出现的原因是之前我在配置MongoDB数据库的环境变量的时候把C:\Windows\System32这个path路径(大小写)写错了,所以系统找不到C:\Windows\System32这个路径就会报错了。 -
为什么添加了那个path路径就不报错了呢(环境变量的原理)?
- Path环境变量存放的是什么?
是一连串的路径。 - 存放规则?
不同的路径之间,用英文的分号(;)分隔开。 - 存放那些路径有什么用(或者说执行的过程到底是什么样的)?
系统执行用户命令时,若用户未给出绝对路径,则首先在当前目录下寻找相应的可执行文件、批处理文件(另外一种可以执行的文件)等。若找不到,再依次在 Path保存的这些路径中寻找相应的可执行的程序文件。系统就以第一次找到的为准;若搜寻完 Path保存的所有路径都未找到,则会显示类似于图一的错误信息。
- Path环境变量存放的是什么?