博文

目前显示的是 七月, 2021的博文

解决Conda报错“C:/Program”不是命令

环境变量不能乱配 症状是什么? 执行完 conda init 之后,一打开Power Shell,就提示报错,内容是“C:/Program”不是命令云云,查看内容是Conda的一个Powershell脚本里的报错。 此外,mysql命令也不能正常执行,因为似乎Powershell没能正确加载环境变量。 如何找到原因? 观察报错内容,发现提示 C:\Program Files (x86)\Tesseract-OCR\tessdata 云云,我发现,这不是我环境变量里的东西吗?! 引起报错的是这个和Java环境变量之间的一个双引号。 如何解决? 原来是 JAVA_HOME 环境变量配置的时候我给加了个双引号,像这样: "C:\Program Files\Java\jdk-16.0.1" 。去掉这个双引号就行了。 原理是什么? Java用着没问题,但这个双引号导致 Path 排在 %JAVA_HOME%\bin 后面的环境变量出现了问题。不过,这个似乎还和程序有关,比如Docker,mingw和nodejs就没有受到影响,但是Conda因为要用到Powershell脚本,就受到了影响。 Windows在编辑Path的时候会自动去掉路径的双引号,但是在编辑与Path同级的其他环境变量的时候则不会这么做。