Angular/cli 安装错误

Angular/cli installation Error

我在尝试使用 npm 安装@angular cli 时遇到了巨大的错误 我在公司网络中工作。这在我在家创建 cli 项目时有效。

npm install -g @angular/cli
C:\Users\nitin.shekhar\AppData\Roaming\npm\ng -> C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\bin\ng

> node-sass@4.5.3 install C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\node-sass
> node scripts/install.js

Downloading binary from https://github.com/sass/node-sass/releases/download/v4.5.3/win32-x64-48_binding.node
Cannot download "https://github.com/sass/node-sass/releases/download/v4.5.3/win32-x64-48_binding.node":

getaddrinfo EAI_AGAIN github.com:443

Hint: If github.com is not accessible in your location
      try setting a proxy via HTTP_PROXY, e.g.

      export HTTP_PROXY=http://example.com:1234

or configure npm proxy via

      npm config set proxy http://example.com:8080

> node-sass@4.5.3 postinstall C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\node-sass
> node scripts/build.js

Building: C:\Program Files\nodejs\node.exe C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
gyp info it worked if it ends with ok
gyp verb cli [ 'C:\Program Files\nodejs\node.exe',
gyp verb cli   'C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\node-gyp\bin\node-gyp.js',
gyp verb cli   'rebuild',
gyp verb cli   '--verbose',
gyp verb cli   '--libsass_ext=',
gyp verb cli   '--libsass_cflags=',
gyp verb cli   '--libsass_ldflags=',
gyp verb cli   '--libsass_library=' ]
gyp info using node-gyp@3.6.2
gyp info using node@6.11.2 | win32 | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb check python checking for Python executable "python2.7" in the PATH
gyp verb `which` failed Error: not found: python2.7
gyp verb `which` failed     at getNotFoundError (C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqWrap.oncomplete (fs.js:123:15)
gyp verb `which` failed  python2.7 { Error: not found: python2.7
gyp verb `which` failed     at getNotFoundError (C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqWrap.oncomplete (fs.js:123:15)
gyp verb `which` failed   stack: 'Error: not found: python2.7\n    at getNotFoundError (C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\which\which.js:13:12)\n    at F (C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\which\which.js:68:19)\n    at E (C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\which\which.js:80:29)\n    at C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\which\which.js:89:16\n    at C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\isexe\index.js:42:5\n    at C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\isexe\windows.js:36:5\n    at FSReqWrap.oncomplete (fs.js:123:15)',
gyp verb `which` failed   code: 'ENOENT' }
gyp verb could not find "python2.7". checking python launcher
gyp verb could not find "python2.7". guessing location
gyp verb ensuring that file exists: C:\Python27\python.exe
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python2.7", you can set the PYTHON env variable.
gyp ERR! stack     at Object.failNoPython (C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\node-gyp\lib\configure.js:483:19)
gyp ERR! stack     at Object.<anonymous> (C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\node-gyp\lib\configure.js:508:16)
gyp ERR! stack     at C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\graceful-fs\polyfills.js:284:29
gyp ERR! stack     at FSReqWrap.oncomplete (fs.js:123:15)
gyp ERR! System Windows_NT 10.0.14393
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\node-gyp\bin\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd C:\Users\nitin.shekhar\AppData\Roaming\npm\node_modules\@angular\cli\node_modules\node-sass
gyp ERR! node -v v6.11.2
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
Build failed with error code: 1
C:\Users\nitin.shekhar\AppData\Roaming\npm
`-- @angular/cli@1.3.1
  `-- UNMET OPTIONAL DEPENDENCY node-sass@^4.3.0

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules\@angular\cli\node_modules\chokidar\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: node-sass@4.5.3 (node_modules\@angular\cli\node_modules\node-sass):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: node-sass@4.5.3 postinstall: `node scripts/build.js`
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

好像你在代理服务器后面,所以 npm 无法访问 github 您需要通过公司代理配置 npm,例如:

npm config set proxy http://company-proxy-here:port
npm config set https-proxy http://company-proxy-here:port

查看更多详情Using npm behind corporate proxy .pac

转到 Windows 的用户目录并转到有您名字的目录 您会找到一个名为 .npmrc

的文件

使用任何文本编辑器对其进行编辑。 添加以下行:

注册表=http://registry.npmjs.org/

proxy=http:// username:password@ip:port

http-proxy=http:// username:password@ip:port

https-proxy=http:// username:password@ip:port

strict-ssl=false

从网络或现场 IT 获取本地代理