繁体   English   中英

npm install在Windows PowerShell中不起作用

[英]npm install doesn't work in Windows PowerShell

所以我的问题是这个。 我有一个包含package.json的项目。 当我在命令提示符(cmd.exe)中运行“npm install”时,所有内容都按预期安装。 但是,当我在PowerShell(powershell.exe)中执行完全相同的操作时,我收到一个错误:“npm ERR!错误:ENOENT,打开'c:\\ package.json'”即使我在路径中运行“npm install”该项目。 它总是在c中搜索package.json:由于某种原因我无法理解。

下面是npm-debug.log(也写成ic:即使我的路径是c:\\ code \\ myProject):

0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Program Files\\nodejs\\\\node.exe',
1 verbose cli   'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'install' ]
2 info using npm@1.3.11
3 info using node@v0.10.21
4 verbose node symlink C:\Program Files\nodejs\\node.exe
5 error install Couldn't read dependencies
6 error Error: ENOENT, open 'c:\package.json'
7 error If you need help, you may report this log at:
7 error     <http://github.com/isaacs/npm/issues>
7 error or email it to:
7 error     <npm-@googlegroups.com>
8 error System Windows_NT 6.2.9200
9 error command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install"
10 error cwd c:\
11 error node -v v0.10.21
12 error npm -v 1.3.11
13 error path c:\package.json
14 error code ENOENT
15 error errno 34
16 verbose exit [ 34, true ]

我无法在任何地方找到解决这个问题的方法。 PATH变量设置正确,因为节点和npm本身都有效。

使用.npmrc显式设置前缀:

  • 转到\\Users\\%USERNAME%\\.npmrc 例如,在Powershell中:

     Notepad "\\Users\\$env:USERNAME\\.npmrc" 
  • 设置前缀:

     prefix = "C:/Program Files/nodejs" 

参考

对我来说,在Powershell中这样做要容易得多。

$env:Path += ";C:\Program Files\nodejs\"

在powershell中跑了“npm”,然后立刻走了过来。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM