当文件发生变化时,从maven运行JAVA main方法

时间:2014-08-04 18:30:40

标签: java maven

我已经使用pom.xml配置了一个maven exec-maven-plugin来执行JAVA main方法,但是,它总是在mvn installmvn clean install上执行。

是否有替代/配置更改/只有在项目有任何更改时才执行JAVA主方法。该项目正在从SVN存储库中检出。

<profiles>
 <profile>
  <id>code-generator</id>
  <build>
   <plugins>
    <plugin>
     <groupId>org.codehaus.mojo</groupId>
     <artifactId>exec-maven-plugin</artifactId>
     <version>1.0</version>
     <executions>
      <execution>
       <phase>package</phase>
       <goals>
        <goal>java</goal>
       </goals>
       <configuration>
        <mainClass>com.package.TestClass</mainClass>
        <arguments>
         <argument>test</argument>
        </arguments>
       </configuration>
      </execution>
     </executions>
    </plugin>
   </plugins>
  </build>
 </profile>
</profiles>

2 个答案:

答案 0 :(得分:0)

检测更改并不容易,即使maven本身也有quite an issue。除非你编写自己的maven插件(现在很有可能),否则每次构建适当的步骤时,你都会坚持执行你的文件。

解决方法可能只构建特定目标 - 例如,您可以执行maven compile - 这样您就不会(!)执行package因此您的java文件不会得到执行。

了解更多信息read this

答案 1 :(得分:0)

创建grunt任务以监视更改,然后让任务运行这些maven命令when a change occurs,将会起作用。

唯一的问题是你必须学习咕噜声并单独运行它。但是,它可以工作

让grunt使用&#34; exec-maven-plugin&#34;执行配置文件,否则,您不会使用该配置文件。