首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Powershell在nvm更改节点版本后不识别npm

Powershell在nvm更改节点版本后不识别npm
EN

Stack Overflow用户
提问于 2020-03-25 08:01:43
回答 2查看 1.3K关注 0票数 3

我的powershell脚本有问题。我希望构建一个基于节点10.17.0的项目,并将结果复制到其他基于节点8.11.4的项目中,并运行该项目。

代码语言:javascript
复制
   cd $PathToWebLibs

   Write-Host "..........Switching to node v10.17.0.........." -ForegroundColor Magenta
   nvm use 10.17.0

   Write-Host "..........Building WebLibs.........." -ForegroundColor Magenta
   npm run build_lib

   Write-Host "..........Copying files from ($PathToWebLibs\dist\rsp\core-ui) to ($PathToSFP\node_modules\@rsp) .........." -ForegroundColor Magenta

   cp -Recurse -Force ($PathToWebLibs + "\dist\rsp\core-ui") ($PathToSFP + "\node_modules\@rsp")

   cd $PathToSFP

   Write-Host "..........Switching to node v8.11.4.........." -ForegroundColor Magenta
   nvm use 8.11.4


   Write-Host "..........Starting SFP.........." -ForegroundColor Magenta
   npm run start

问题是,当nvm更改时,节点npm的版本无法被识别。当我手动执行时,只需一个一个地输入命令,它就能工作。

我可以补充说,系统环境路径设置正确。我查过了。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-03-25 12:09:23

nvm被设计为由您的shell在进程中运行,它只支持与POSIX兼容的shell(如bash ),而不支持PowerShell:

nvm工作在任何符合POSIX的shell上(sh、dash、ksh、zsh、bash),特别是在这些平台上: unix、macOS和windows。

在类似Unix的平台上,也可能在WSL上,将Node.js版本管理器n作为替代方案,它不依赖于修改当前shell的环境。

  • N-安装允许直接从GitHub安装n;例如: curl -L https://git.io/n-install | bash
  • 但是,这个特殊的安装方法(包括安装Node.js本身)目前需要在PowerShell中(在PowerShell $PROFILE文件中,或者通过持久性环境--Windows注册表中的变量定义)进行额外的配置:必须将$HOME/n/bin添加到$env:Path中,并且必须将$env:PREFIX设置为$HOME/n (如果从WSL外部运行PowerShell,则相应地调整WSL的路径)。
票数 1
EN

Stack Overflow用户

发布于 2021-01-02 22:02:13

在nvm使用XXX之后,我用powershell启动-睡眠方法解决了这个问题.它起到了帮助作用,而且目前运作良好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60844828

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档