maven install时,运行批处理命令的好处是,如果你需要执行一个命令,而这个命令必须在特殊的目录中才能执行,那么在批处理命令中,你可以先cd到那个目录(当然,ant插件也可以在其他目录执行程序的功能),然后在执行命令。
方式一
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<id>Creating a Production Build with Sencha Command</id>
<phase>generate-sources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>c:\tools\jsBuild.bat</executable>
</configuration>
</execution>
</executions>
</plugin>
这样,批处理命令的输出默认会出现在maven的build结果中
方式二
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<id>Creating a Production Build with Sencha Command</id>
<phase>generate-sources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>cmd</executable>
<arguments>
<argument>/C</argument>
<argument>start</argument>
<argument>c:\tools\jsBuild.bat</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
这样做的结果是maven在generate-sources阶段会开启一个命令行窗口,命令行窗口会执行你的批处理命令,maven会等待命令执行完才继续剩下的操作。
方式一
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<id>Creating a Production Build with Sencha Command</id>
<phase>generate-sources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>c:\tools\jsBuild.bat</executable>
</configuration>
</execution>
</executions>
</plugin>
这样,批处理命令的输出默认会出现在maven的build结果中
方式二
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<id>Creating a Production Build with Sencha Command</id>
<phase>generate-sources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>cmd</executable>
<arguments>
<argument>/C</argument>
<argument>start</argument>
<argument>c:\tools\jsBuild.bat</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
这样做的结果是maven在generate-sources阶段会开启一个命令行窗口,命令行窗口会执行你的批处理命令,maven会等待命令执行完才继续剩下的操作。