我希望在我的Windows机器上安装node.js,并且我希望使用nvm来这样做。在我所知道的windows机器上安装实际nvm的唯一方法是使用WSL (我目前正在考虑使用WSL2,但如果有使用1的原因,请告诉我,我没有经验)。据我所知,WSL有点类似于(或者是?)虚拟机,在这种情况下,只有当我想在WSL中使用node.js时,才能在WSL中安装nvm。或者,我错了,而且有一些魔法在起作用,使Windows本身能够使用安装在WSL中的nvm吗?
简言之:
WSL上的nvm -> node.js on WSL
或
基于WSL的-> node.js上的nvm
我知道WSL只允许我安装一些linux发行版。只是为了争论,我才说“安装在WSL上”。
发布于 2021-08-11 20:49:55
在Windows上运行nvm的唯一受支持的方法是通过WSL,这是正确的。有一个单独的(与“原始”nvm无关的) nvm-窗口项目,但我不能谈论它的质量。在“亲”方面,我确实看到微软在他们的一些NodeJS文档中引用了它。但作为一个“骗局”,它似乎是在大约3年前的某个地方更新的。这可能是问题,也可能不是问题。
是的,如果在WSL下使用nvm,它只会安装Linux版本。您不能使用它来管理针对Windows的节点安装。正如@ThomasUrban在评论中指出的那样,安装Windows节点版本甚至可能会在试图安装nvm时造成问题。
我个人更喜欢N,但它也会有类似的限制。
这确实是一个单独的问题,也许应该单独发布,但WSL2和WSL1确实是相辅相成的。我要从我之前做过的Reddit文章中复制/粘贴:
.vhdx),使文件系统更加健壮git clone在WSL1上需要几秒,而在WSL2上大约需要10分钟。如果您需要处理NTFS上的文件,请为此保留一个WSL1实例。Windows 1的网络堆栈是伪桥接的,因此网络服务可以直接从
- The network is on a virtual NIC "behind" the Windows host. This means that if you run a service (e.g. ssh or http) on the WSL2 instance, it will not be available to other devices on your network without some hacky port-forwarding.主机IP地址访问。
因此,如果您正在使用WSL进行一些类似的开发,如React/ result /Svelte/Vue/etc,则从网络的角度来看,WSL1更简单。
因此,也许令人惊讶的是,对于许多Node开发人员来说,WSL1可能是更好的选择。您可以随时安装第二个副本,并使其成为WSL2 -两者将一起运行。
最后一点是:
我知道WSL只允许我安装一些Linux发行版。
你可能会大吃一惊。虽然在Microsoft中有一些预先打包的发行版,但WSL几乎可以导入任何发行版(Microsoft称其为“任意”)。见这位医生。
https://stackoverflow.com/questions/68748336
复制相似问题