我在我的ubuntu盒子上安装了nodejs(npm)和npm install grunt-cli.我找到了maven的maven-ant-run配置:
https://gist.github.com/nadavdav/5308453
但是当我从命令行运行mvn clean install时,我得到:
building:
[echo] ---------------------------------------------------
[echo] -- NPM INSTALL --
[echo] ---------------------------------------------------
[exec] /usr/bin/npm: npm: line 2: syntax error near unexpected token `;'
[exec] /usr/bin/npm: npm: line 2: `;(function () { // wrapper in case we're in module_context mode'
Run Code Online (Sandbox Code Playgroud)
为什么在maven中运行时npm会失败?
编辑:我现在已将配置更新为:
<!-- <exec executable="bash" dir="${project.basedir}" osfamily="unix" -->
<!-- failonerror="true"> -->
<!-- <arg line="npm install" /> -->
<!-- </exec> -->
<!-- WORKING -->
<exec executable="npm" dir="${project.basedir}" failonerror="true">
<arg value="install" />
</exec>
Run Code Online (Sandbox Code Playgroud)
哪个有效.但奇怪的是,它在运行原始版本时不起作用.
因为在第一个示例中,您使用参数'npm install'运行'bash',这与bash npm install在命令行上运行相同.这告诉bash尝试将'npm'作为shell脚本运行,但npm路径中的脚本是javascript代码.试试吧:
john-warden-mba-2012:nodetest john$ bash npm install
/opt/local/bin/npm: npm: line 2: syntax error near unexpected token `;'
/opt/local/bin/npm: npm: line 2: `;(function () { // wrapper in case we're in module_context mode'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2995 次 |
| 最近记录: |