Не удается запустить npm и bash с maven

Я установил nodejs (npm) и npm install grunt-cli в свой ящик ubuntu. Я нашел красивую конфигурацию maven- ant -run для maven:

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'

Почему npm не работает при запуске внутри maven?

EDIT: я обновил конфигурацию до:

<!-- <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>

который работает. Но странно, что он не работает при запуске исходной версии.

Ответ 1

Потому что в первом примере вы запускали 'bash' с аргументом npm install ', который совпадает с запуском bash npm install в командной строке. Это сообщает bash попробовать запустить "npm" в качестве оболочки script, но npm script в вашем пути - это код 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'