【问题标题】:Including classes of a path to build a war包括建立战争的路径类
【发布时间】:2011-11-25 20:24:54
【问题描述】:

我尝试在不复制已编译类的情况下对多模块项目进行战争。我使用 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>

【问题讨论】:

    标签: ant ivy


    【解决方案1】:

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

    1. 创建空的战争目录
    2. 使用 ivy.resolveA 创建 path.projectA,编译,复制类到 war-dir
    3. 使用 ivy.resolveA 创建 path.projectB,编译,复制类到 war-dir
    4. 压缩战争目录

    如果需要,请使用 ivy:retrieve 将 lib/ 包含在您的存档中。

    一月

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-27
      • 1970-01-01
      • 2023-03-26
      • 2014-02-04
      • 1970-01-01
      • 1970-01-01
      • 2017-08-24
      • 2012-02-27
      相关资源
      最近更新 更多