2011-08-01 69 views
1

我使用maven-antrun-plugin从节俭IDL生成源文件。循环遍历maven中的特定资源文件以生成源文件

我有一个单独的项目(和罐子)来保存这些生成的来源,这个插件不支持通配符替换,所以我不能说* .thrift。

我使用执行任务来生成源并将它们复制到src目录。我有以下插件定义

 <plugin> 
      <artifactId>maven-antrun-plugin</artifactId> 
      <executions> 
       <execution> 
        <id>generate-sources</id> 
        <phase>generate-sources</phase> 
        <configuration> 
         <tasks> 
          <mkdir dir="target/generated-sources" /> 
          <exec executable="${thrift.executable}" failonerror="true"> 
           <arg value="--gen" /> 
           <arg value="java:beans" /> 
           <arg value="-o" /> 
           <arg value="target/generated-sources" /> 
           <arg value="src/main/thrift/MyThriftResource.thrift" /> 
          </exec> 

          <delete> 
           <fileset dir="src/main/java" includes="**/*" /> 
          </delete> 
          <copy todir="src/main/java"> 
           <fileset dir="target/generated-sources/gen-javabean" /> 
          </copy> 
         </tasks> 
        </configuration> 
        <goals> 
         <goal>run</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 

现在,如果我想使用另一种节俭IDL,那么我需要定义特定的文件多了一个执行。我不想为每个IDL都添加这个功能,我想说的是选择所有的节俭文件并生成源文件。有没有办法做到这一点?

回答