2011-05-17 39 views
0

我尝试在不复制已编译的类的情况下在多模块项目上构建战争。我使用Ivy来管理我的模块之间的依赖关系。包含构建战争的路径的类

很难用常春藤报告的结果来构建战争。我的依赖关系被转换为路径(classes.path=rootdir/module1/build/classes;rootdir/module2/build/classes;rootdir/module3/build/classes;)。我想将这条路径的所有文件都包含在战争中。它不工作。

为了测试我的构建,我尝试了这个目标。结果是:Warning: skipping zip archive D:\dev\mci\admin\build\dist\admin.war because no files were included.

任何想法,为什么它不工作?

<target name="aaa-zip"> 

    <path id="aaa"> 
     <path path="D:/dev/mci/admin/build/classes"/> 
    </path> 

    <ac:pathtofileset name="aaa.fileset" 
        pathrefid="aaa" 
        dir="${basedir}"/> 
    <zip destfile="${build.war.full.filename}"> 
     <mappedresources> 
      <restrict> 
       <fileset refid="aaa.fileset"/> 
       <type type="file"/> 
      </restrict> 
      <globmapper from="*" to="WEB-INF/classes/*"/> 
     </mappedresources> 
    </zip> 
</target> 

回答

0

我不完全明白你在做什么,为什么,所以我只是简短地告诉你什么对我有用,也许这会有所帮助。

  1. 创建空战争DIR
  2. 使用ivy.resolveA创建path.projectA,编译,复制类战争DIR
  3. 使用ivy.resolveA创建path.projectB,编译,复制类战争DIR
  4. 拉链战争DIR

如果需要的话,使用ivy:检索包括LIB /侧面侑存档。

1月