约曼。文件名、目录名或卷标语法不正确

Yeoman. The filename, directory name, or volume label syntax is incorrect

重新安装 Windows 10(版本 10.0.14393)。重新安装了以下内容:

java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)

当我在任何文件夹的 cmd 中写入 yo -v 时,无论是否以管理员身份运行,我都采取:

The filename, directory name, or volume label syntax is incorrect.

更新:
我发现的唯一解决方法是使用 yo 的完整路径:

C:\Users\<username>\AppData\Local\Yarn\config\global\node_modules\.bin\yo.cmd

可能是你的PATH does not point to global NPM modules yet。常见问题解答和链接对 gnu/linux 或 mac 用户更有帮助。 PATH 是您的操作系统在您键入命令时检查的位置列表。

由于您正在使用 Windows,要在提示符下临时添加模块路径(仅用于一个会话),只需键入(显然使用正确的路径和正确的用户名,请注意 ;分隔符):

path = %path%;C:\Users\<username>\AppData\Local\Yarn\config\global\node_modules\.bin\

然后您应该能够 运行 'yo -v' 而无需指向完整路径名,因为控制台现在知道还要检查该文件夹。如果这对您有用,您可以使用另一个 SO post here 中描述的说明 永久 添加该路径。

最后(这与您的问题仅略有相关),因为我注意到您已经获得了 Windows 10 周年更新,如果您有 Linux 经验,您可能更喜欢使用 "Windows subsystem for Linux",它是 Windows 上的 bash shell (Ubuntu 14),您可以使用它代替默认命令提示符。您可以在 "Add / Remove programs --> Turn Windows features on or off --> (scroll right down) --> Windows subsystem for Linux (beta)" 下找到它。您的本地文件系统将位于“/mnt/c”,因此您可以从 shell 或 windows 资源管理器访问它。我在使用它时遇到的问题较少,并且由于很多教程都是在考虑 bash(不是命令提示符)的情况下编写的,因此使用它而不是 cmd 很有用。

您需要使用 apt-get 以通常的方式安装依赖项(因为它不会使用您在 windows 端安装的依赖项)并且您需要使用 'sudo' 进行系统更改的前缀命令。例如

sudo npm -g modulename