Ionic 2 - 使用npm install安装node_modules时出错?

时间:2017-06-09 12:26:56

标签: node.js cordova npm ionic2 npm-install

我已经安装了最新的Node JS ( v 8.1.0 ),Ionic和Cordova,然后尝试使用node_modules在使用npm install创建的离子演示标签项目中安装ionic start myApp tabs,我得到了以下错误。我正在使用 Windows 10 Pro 。我已经尝试了很多,但还没有解决这个问题。任何帮助将不胜感激。

npm install
✖ Running command - failed!
[ERROR] An error occurred while running npm install (exit code 1):

        npm WARN prefer global node-gyp@3.6.2 should be installed with -g

        > node-sass@4.5.0 install E:\Hybrid Project Locker\NFB\node_modules\node-sass
        > node scripts/install.js

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

        HTTP error 404 Not Found

        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

        > fsevents@1.1.1 install E:\Hybrid Project Locker\NFB\node_modules\fsevents
        > node install


        > node-sass@4.5.0 postinstall E:\Hybrid Project Locker\NFB\node_modules\node-sass
        > node scripts/build.js

        Building: C:\Program Files\nodejs\node.exe E:\Hybrid Project Locker\NFB\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldf
lags= --libsass_library=
        gyp info it worked if it ends with ok
        gyp verb cli [ 'C:\\Program Files\\nodejs\\node.exe',
        gyp verb cli   'E:\\Hybrid Project Locker\\NFB\\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@8.1.0 | 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" in the PATH
        gyp verb `which` failed Error: not found: python2
        gyp verb `which` failed     at getNotFoundError (E:\Hybrid Project Locker\NFB\node_modules\which\which.js:13:12)
        gyp verb `which` failed     at F (E:\Hybrid Project Locker\NFB\node_modules\which\which.js:68:19)
        gyp verb `which` failed     at E (E:\Hybrid Project Locker\NFB\node_modules\which\which.js:80:29)
        gyp verb `which` failed     at E:\Hybrid Project Locker\NFB\node_modules\which\which.js:89:16
        gyp verb `which` failed     at E:\Hybrid Project Locker\NFB\node_modules\isexe\index.js:42:5
        gyp verb `which` failed     at E:\Hybrid Project Locker\NFB\node_modules\isexe\windows.js:36:5
        gyp verb `which` failed     at FSReqWrap.oncomplete (fs.js:152:21)
        gyp verb `which` failed  python2 { Error: not found: python2
        gyp verb `which` failed     at getNotFoundError (E:\Hybrid Project Locker\NFB\node_modules\which\which.js:13:12)
        gyp verb `which` failed     at F (E:\Hybrid Project Locker\NFB\node_modules\which\which.js:68:19)
        gyp verb `which` failed     at E (E:\Hybrid Project Locker\NFB\node_modules\which\which.js:80:29)
        gyp verb `which` failed     at E:\Hybrid Project Locker\NFB\node_modules\which\which.js:89:16
        gyp verb `which` failed     at E:\Hybrid Project Locker\NFB\node_modules\isexe\index.js:42:5
        gyp verb `which` failed     at E:\Hybrid Project Locker\NFB\node_modules\isexe\windows.js:36:5
        gyp verb `which` failed     at FSReqWrap.oncomplete (fs.js:152:21) code: 'ENOENT' }
        gyp verb check python checking for Python executable "python" in the PATH
        gyp verb `which` failed Error: not found: python
        gyp verb `which` failed     at getNotFoundError (E:\Hybrid Project Locker\NFB\node_modules\which\which.js:13:12)
        gyp verb `which` failed     at F (E:\Hybrid Project Locker\NFB\node_modules\which\which.js:68:19)
        gyp verb `which` failed     at E (E:\Hybrid Project Locker\NFB\node_modules\which\which.js:80:29)
        gyp verb `which` failed     at E:\Hybrid Project Locker\NFB\node_modules\which\which.js:89:16
        gyp verb `which` failed     at E:\Hybrid Project Locker\NFB\node_modules\isexe\index.js:42:5
        gyp verb `which` failed     at E:\Hybrid Project Locker\NFB\node_modules\isexe\windows.js:36:5
        gyp verb `which` failed     at FSReqWrap.oncomplete (fs.js:152:21)
        gyp verb `which` failed  python { Error: not found: python
        gyp verb `which` failed     at getNotFoundError (E:\Hybrid Project Locker\NFB\node_modules\which\which.js:13:12)
        gyp verb `which` failed     at F (E:\Hybrid Project Locker\NFB\node_modules\which\which.js:68:19)
        gyp verb `which` failed     at E (E:\Hybrid Project Locker\NFB\node_modules\which\which.js:80:29)
        gyp verb `which` failed     at E:\Hybrid Project Locker\NFB\node_modules\which\which.js:89:16
        gyp verb `which` failed     at E:\Hybrid Project Locker\NFB\node_modules\isexe\index.js:42:5
        gyp verb `which` failed     at E:\Hybrid Project Locker\NFB\node_modules\isexe\windows.js:36:5
        gyp verb `which` failed     at FSReqWrap.oncomplete (fs.js:152:21) code: 'ENOENT' }
        gyp verb could not find "python". checking python launcher
        gyp verb could not find "python". 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 "python", you can set the PYTHON env variable.
        gyp ERR! stack     at PythonFinder.failNoPython (E:\Hybrid Project Locker\NFB\node_modules\node-gyp\lib\configure.js:483:19)
        gyp ERR! stack     at PythonFinder.<anonymous> (E:\Hybrid Project Locker\NFB\node_modules\node-gyp\lib\configure.js:508:16)
        gyp ERR! stack     at E:\Hybrid Project Locker\NFB\node_modules\graceful-fs\polyfills.js:284:29
        gyp ERR! stack     at FSReqWrap.oncomplete (fs.js:152:21)
        gyp ERR! System Windows_NT 10.0.10586
        gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "E:\\Hybrid Project Locker\\NFB\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--li
bsass_cflags=" "--libsass_ldflags=" "--libsass_library="
        gyp ERR! cwd E:\Hybrid Project Locker\NFB\node_modules\node-sass
        gyp ERR! node -v v8.1.0
        gyp ERR! node-gyp -v v3.6.2
        gyp ERR! not ok
        Build failed with error code: 1
        npm WARN @angular/http@2.4.10 requires a peer of @angular/platform-browser@2.4.10 but none was installed.
        npm WARN @ionic/cli-plugin-ionic-angular@1.3.0 requires a peer of @ionic/app-scripts@^1.3.7 but none was installed.
        npm WARN cordova-ios@4.4.0 had bundled packages that do not match the required version(s). They have been replaced with non-bundled versions.

        npm ERR! code ELIFECYCLE
        npm ERR! errno 1
        npm ERR! node-sass@4.5.0 postinstall: `node scripts/build.js`
        npm ERR! Exit status 1
        npm ERR!
        npm ERR! Failed at the node-sass@4.5.0 postinstall script.
        npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

        npm ERR! A complete log of this run can be found in:
        npm ERR!     C:\Users\Anoop M\AppData\Roaming\npm-cache\_logs\2017-06-10T00_37_25_356Z-debug.log

4 个答案:

答案 0 :(得分:1)

尝试使用Node.js v6,它应该可以工作。这是因为Node Sass v4.5.0不支持Node.js v8

您可以在此处查看Node Sass v4.5.0支持的环境:https://github.com/sass/node-sass/releases/tag/v4.5.0

答案 1 :(得分:1)

更改为node-sass 4.5.3,因为它修复了节点8上的错误安装https://github.com/sass/node-sass/releases

答案 2 :(得分:0)

  1. 删除package.json中的(webpack,sass-loader / less-loader和node-sass)条目。
  2. 删除node_modules文件夹
  3. 使用“ npm install sass-loader node-sass webpack ”进行安装。
  4. 这对我有用。

答案 3 :(得分:0)

尝试运行此命令:

npm install --unsafe-perm node-sass