2013-10-11 36 views
2

我使用exec-maven-plugin从maven运行'npm install'。它失败,这样的错误:来自maven的节点npm在项目目录中看起来npm-cli.js

module.js:340 
throw err; 
    ^
Error: Cannot find module 'D:\projects\git\code\node_modules\npm\bin\npm-cli.js' 
at Function.Module._resolveFilename (module.js:338:15) 
at Function.Module._load (module.js:280:25) 
at Function.Module.runMain (module.js:497:10) 
at startup (node.js:119:16) 
at node.js:901:3 

显然没有NPM-CLI项目的路径下,它是在被的NodeJS安装了全局路径。

所以整个构建是失败,状态

[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.2.1:exec (npm) on project myproject: Command execution failed. Process exited with an error: 8 (Exit value: 8) -> [Help 1] 

那NPM安装“下的控制台运行完全正常的另一个有趣的事情。问题只发生在我从maven运行它时。

任何想法,将不胜感激!

回答

4

它令人惊讶的java版本如何影响maven的行为。

问题是在使用java1.7_25,java试图从maven运行exec任务时,它破坏了〜dp0路径(运行任务的目标路径)。

我简单地更新为java1.7_40,一切都很顺利。

1

另一种解决方法,万一别人是停留在一个较旧的JDK和我一样,是从EXEC - Maven的插件运行

cmd /c npm install 

相关问题