I use the exec-maven-plugin as follow
<plugin>
<artifactId>exec-maven-plugin</artifactId>
<groupId>org.codehaus.mojo</groupId>
<version>1.6.0</version>
<executions>
<execution>
<id>npm install</id>
<goals>
<goal>exec</goal>
</goals>
<phase>generate-sources</phase>
<configuration>
<executable>${npm.executable}</executable>
<arguments>
<argument>install</argument>
</arguments>
<workingDirectory>${basedir}/target/angular5/tourism</workingDirectory>
<target>
<echo message="Npm install" />
</target>
</configuration>
</execution>
</executions>
</plugin>
I have the following error
java.io.IOException: Cannot run program "npm" (in directory "/Users/admin/Application-Marwen/workspace/Tourism/Tourism-Web/target/angular5/tourism"): error=2, No such file or directory
However the directory "/Users/admin/Application-Marwen/workspace/Tourism/Tourism-Web/target/angular5/tourism" exists and the command npm install works in this directory in the console. I have the Apache Maven 3.5.4 installed and use eclipse
First, you should edit your question as I mentionned in comments below.
Then, I think you misunderstood the error. In fact, the error indicates that
npm
is not found inside your directory"/Users/admin/Application-Marwen/workspace/Tourism/Tourism-Web/target/angular5/tourism
.And this is normal.
npm
is in yourPATH
that's why you can runnpm install
successfully.I recommand you to use a Maven plugin for npm commands:
Adding -PlocalNoDeploy as part of your mvn command might resolve this issue.