我尝试在我的Mac上安装twitter bower,我用过
npm install bower -g
Run Code Online (Sandbox Code Playgroud)
然后我尝试了bower --help,输出是bower command not found.这是为什么?
我已成功安装了nodejs,并表达了框架,但我下载了bower via
npm install -g bower
Run Code Online (Sandbox Code Playgroud)
哪个成功了.
但是每当我尝试用凉亭安装东西时,我都会收到错误消息
bower is not recognised as an internal or external command
Run Code Online (Sandbox Code Playgroud)
当我在电脑上搜索bower或bower.exe时,我无法找到它.
我执行时似乎得到了以下内容 npm install bower -g
/usr/local/share/npm/bin/bower -> /usr/local/share/npm/lib/node_modules/bower/bin/bower
bower@0.8.6 /usr/local/share/npm/lib/node_modules/bower
Run Code Online (Sandbox Code Playgroud)
不幸的是,执行任何bower命令都会返回 -bash: bower: command not found
which npm返回/usr/local/bin/npm并运行which node返回/usr/local/bin/node.
在PowerShell中,我需要更改系统路径变量:
$oldPath = [System.Environment]::GetEnvironmentVariable('Path', 'Machine')
[System.Environment]::SetEnvironmentVariable('Path', (Transform-It $oldPath), 'Machine')
Run Code Online (Sandbox Code Playgroud)
然后启动一个程序:
& $someExeName 'someargument'
Run Code Online (Sandbox Code Playgroud)
我得到的问题是可执行文件正在使用旧环境.它无法识别新路径.如果我也更改$env.path,要仅更改此PowerShell会话的路径,它也不会传播到新进程.如果我关闭PowerShell并在新窗口中启动可执行文件,那很好.据推测,它继承了PowerShell流程中的(未更新的)环境.
在PowerShell中更改环境变量并通过从该窗口启动的新进程识别它的最佳实践是什么?
我知道这个问题已经问过很多遍了,但实际上没有一个人帮助过我。我在Windows 10上并使用以下代码通过npm成功安装了bower
npm install -g bower
Run Code Online (Sandbox Code Playgroud)
我已经将路径添加到系统环境变量,但是仍然收到相同的错误Bower,无法将其识别为内部或外部命令。
我在系统环境变量中添加了以下路径
C:\Users\habib\AppData\Romaing\npm
Run Code Online (Sandbox Code Playgroud)
当我尝试
npm config get prefix
C:\Users\habib\AppData\Romaing\npm
Run Code Online (Sandbox Code Playgroud)
当我尝试
npm bower -v
Run Code Online (Sandbox Code Playgroud)
我得到凉亭版本
他们俩都不为我工作。
为什么?