Error: Cannot find module '../lib/utils/unsupported.js' while using Ionic

后端 未结 18 2992
悲哀的现实
悲哀的现实 2020-12-12 09:34

I always get this error message when I run \"Ionic start project name\":

Error message

Running command - failed![ERROR] An error occurred while run         


        
18条回答
  •  情深已故
    2020-12-12 10:26

    The error Cannot find module '../lib/utils/unsupported.js' is caused by require('../lib/utils/unsupported.js') in ./lib/node_modules/npm/bin/npm-cli.js.

    According to the nodejs require docs, the required module is searched relative to the file, as it starts with ../.

    Thus, if we take the relative path ../lib/utils/unsupported.js starting from ./lib/node_modules/npm/bin/npm-cli.js, the required module must reside in ./lib/node_modules/npm/lib/utils/unsupported.js. If it is not there, I see two options:

    • the installation is corrupt, in which case Vincent Ducastel's answer to reinstall node might work
    • npm is no symlink to ./lib/node_modules/npm/bin/npm-cli.js. This is what caused the error in my setup. If you call npm, it will typically find it be searching it in the directories listed in the PATH env var. It might for example be located in ./bin. However, npm in a ./bin directory should only be a symlink to the aforementioned ./lib/node_modules/npm/bin/npm-cli.js. If it is not a symlink but directly contains the code, somewhere in the installation process the symlink got replaced by the file it links to. In this case, it should be sufficient to recreate the symlink: cd ./bin; rm npm; ln -s ../lib/node_modules/npm/bin/npm-cli.js npm (update: command fixed, thx @massimo)

    All answers that suggest to check the NODE_PATH or the npmrc config should be ignored, as these are not considered when searching modules relatively.

提交回复
热议问题