【问题标题】:Excluding jars of dependency project during ant build在ant构建期间排除依赖项目的jar
【发布时间】:2014-12-27 01:22:52
【问题描述】:

我正在开发一个使用 ant 作为构建工具的 java 项目。

假设我有两个项目 X 和 Y,它们是相互依赖的。我正在寻找可以在构建期间排除一些 jar 的东西,即,当我构建项目 A 时,它应该在构建期间和创建战争时排除一些 jar。

我知道,如果我们想在类路径中包含和排除 jar,我们会给出

    <include> and <exclude>

在 build.xml 文件中。但是当我们想要包含或排除项目之外的jar时,我们该怎么做呢。

感谢任何帮助。

我参考了以下内容,但无法理解。 Excluding jars from dynamically generated classpaths?

【问题讨论】:

    标签: java eclipse ant jar war


    【解决方案1】:

    我终于找到了我的问题的解决方案。我发布答案认为它可能对将来的某人有用。 我能够使用&lt;exclude&gt;task 使其工作。下面是代码sn-p。

    <target>
     <delete dir="${dest.dir}" failonerror="false" /> 
          <mkdir dir="${dest.dir}" />
      <war destfile="${package.file}" webxml="${temp.dir.web-inf}/web.xml" basedir="${temp.dir}">
        <fileset dir="${pages.dir}"/>
        <lib dir="${lib.dir}">
            <exclude name="servlet-api.jar"/>
            <include name="de.vogella.build.test.ant.jar"/>
        </lib>
        <classes dir="${temp.dir.classes}" />
      </war>
    </target>
    

    一开始它对我不起作用的原因是我没有包含任何&lt;delete&gt; 任务,该任务会在每次构建项目时删除war文件。所以旧的战争文件没有被替换,也没有向我显示任何变化。一旦我包含删除,它就会开始删除以前的构建战争文件并使用一个新的更新,它工作得非常好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-08-15
      • 2011-08-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-06
      相关资源
      最近更新 更多