Doesn't the console show more information about the error? Because probably, for whatever reason, npm install simply fails. It should show why.
To be honest, I'm not a big fan of the exec maven plugin, especially to run commands that need to be installed with a correct version. If an alternative is available, I'd try that instead. Good news: to run npm there is a good alternative: https://github.com/eirslett/frontend-maven-plugin. This downloads a node and npm to your local workspace (which you'd need exclude from your SCM, e.g. using .gitignore), which is then executed. That means that you'll always have the correct (and same!) version - the one you specify in your pom.