问题
I always get this error message when I run "Ionic start project name":
Error message
Running command - failed![ERROR] An error occurred while running npm install (exit code 1):
module.js:471
throw err;
^
Error: Cannot find module '../lib/utils/unsupported.js'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at /usr/local/lib/node_modules/npm/bin/npm-cli.js:19:21
at Object.<anonymous> (/usr/local/lib/node_modules/npm/bin/npm-cli.js:79:3)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
回答1:
Try to remove /usr/local/lib/node_modules/npm
and reinstall node again. This should work.
On MacOS with Homebrew:
sudo rm -rf /usr/local/lib/node_modules/npm
brew reinstall node
回答2:
I followed the previous answers and reinstalled node. But I got this error.
Warning: The post-install step did not complete successfully You can try again using
brew postinstall node
So I ran this command
sudo chown -R $(whoami):admin /usr/local/lib/node_modules/
Then ran
brew postinstall node
回答3:
I received a similar error and now have it working.
First make sure you have the latest version
brew update
Remove your previous instance of node:
brew uninstall node
Then reinstall the latest version:
brew install node
And then make sure it is symlinked into /usr/local if it isn't already. You would get an error to let you know to complete this step.
brew link --overwrite node
More details on how to install/upgrade node are also available.
回答4:
On Mac OS X (10.12.6), I resolved this issue by doing the following:
brew uninstall --force node
brew install node
I then got an error complaining that node postinstall failed, and to rerun brew postinstall node
I then got an error:
permission denied @ rb_sysopen /usr/local/lib/node_modules/npm/bin/npx
I resolved that error by:
sudo chown -R $(whoami):admin /usr/local/lib/node_modules
And now I don't get this error any more.
回答5:
If you are using "n" library @ https://github.com/tj/n . Do the following
echo $NODE_PATH
If node path is empty, then
sudo n latest - sudo is optional depending on your system
After switching Node.js versions using n, npm may not work properly.
curl -0 -L https://npmjs.com/install.sh | sudo sh
echo NODE_PATH
You should see your Node Path now. Else, it might be something else
回答6:
As mentioned earlier.
sudo rm -rf /usr/local/lib/node_modules/npm
brew uninstall --force node
brew install node
回答7:
Tried all above/older brew installation answers, none is working for my laptop.
Only below method could fix my issue.
1) Run following commands:
sudo rm -rf /usr/local/lib/node_modules/npm
brew uninstall --force node
2) Then, proceed to Node.js Official Website https://nodejs.org/en/download/current/ to download latest package for new installation.
3) Run your npm command again, which should longer have any errors.
This method is working on macOS Mojave Version 10.14.4.
回答8:
https://nodejs.org/en/
Simply download node from the official website, this worked for me! :)
回答9:
Yes you should re-install node:
sudo rm -rf /usr/local/lib/node_modules/npm
brew uninstall --force node
brew install node
回答10:
Simply follow three steps;
Clear
npm
cache forcefully:npm cache clean -f
Install
n
package globally usingnpm
:npm install -g n
Install from any of three options:
a.
sudo n stable (get the stable version)
b.
sudo n latest (get the latest version of node)
c.
sudo n x.x.x (get the specific version of node)
回答11:
I got this error by mixing install/update methods: installed node via downloading package from website and later I used brew to update.
I fixed by uninstalling the brew version :
brew uninstall --ignore-dependencies node
Then I went back to node website and downloaded and installed via the package manager: https://nodejs.org/en/download/ For some reason, no amount of trying to reinstall via brew worked.
回答12:
In my case it was $NODE_PATH missing:
NODE="/home/ubuntu/local/node" #here your user account after home
NODE_PATH="/usr/local/lib/node_modules"
PATH="$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:$NODE/bin:$NODE/lib/node_modules"
To check just echo $NODE_PATH
empty means it is not set. Add them to .bashrc is recommended.
回答13:
On fedora 27 I solved the problem by doing this:
sudo rm -f /usr/local/lib/node_modules/npm
sudo dnf reinstall nodejs
回答14:
This is a helpful video and blog post about removing node from your computer OS. It is a different method of removal based on how you installed node in the first place (brew vs. binary file downloaded from https://nodejs.org/en/
if you installed node with Homebrew then brew uninstall node will work. Verify that with running a
node -v
command in your terminal.Otherwise and if you have installed the binary file from nodeJS's websitethen you have to run this command in your terminal:
sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*}
. Again, verify that with running a node -v command.In both cases, successful removal of node should result in bash not recognizing what node is if it is completely removed
回答15:
In my macOS (10.13.3), I got it solved after reinstalling Node version manager.
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
source ~/.bashrc
回答16:
This may happen when the npm/lib
folder got emptied for some reason (could also happen due to permission issues in the last usage).
A reinstallation of the node could solve the issue (as stated on other answers here), but I would suggest using a wonderful tool called nvm
(Node Version Manager), which is able to manage multiple version of node
and npm
- this is mostly useful on dev machines with more than one projects require different versions of node.
When you install nvm, this message will go away and you will have the latest version of node
and npm
to use.
In order to see the list of currently installed node versions in your nvm, just run:
nvm list
In order to install and use a new node version, run:
nvm install <node_version>
For example to install latest version of node 10.x, run:
nvm install 10
In order to switch to currently installed version, run:
nvm use <node_version>
In order to switch to system's original node version, just run:
nvm use system
Hope this helps.
Good luck!
来源:https://stackoverflow.com/questions/44363066/error-cannot-find-module-lib-utils-unsupported-js-while-using-ionic