【问题标题】:Ant: exclude a jar from class path. I want to it to act like it does not existAnt:从类路径中排除一个 jar。我想让它表现得像它不存在一样
【发布时间】:2012-07-24 08:28:04
【问题描述】:

这是我的第一个 ant 项目,但我似乎无法全神贯注。我想有效地删除 jar,然后在运行单元测试后将其恢复。我认为这可以用 exclude 命令来模拟。我也认为应该在<classpath> 标签下完成。我的想法正确吗?我也希望这个 jar 仍然存在,我只是希望我的构建在我运行这个特定目标时忽略它。我试过这个:

<junit fork="no" showoutput="false" printsummary="yes" haltonfailure="false">
     <classpath>
         <fileset dir="${lib.dir}">
             <exclude name="**/*xmlparserv2.jar" />
          </fileset>
     </classpath>
</junit>

但无济于事。谁能指出我正确的方向?

【问题讨论】:

    标签: java ant jar classpath


    【解决方案1】:

    排除整个名称的匹配项,尝试:

    <exclude name="**/*xmlparserv2.jar" />
    

    【讨论】:

    • 啊忘记添加了。我的问题已更新,但我的问题仍然存在。
    • 你怎么知道?将 JAR 放入单独的文件夹是否有效?
    • 我没有尝试放入单独的文件夹。而且我可以说出来,因为我知道 jar 不在类路径上以及当它在类路径上时的行为,它仍然反映了它在类路径上的行为。
    【解决方案2】:

    我最终在测试期间移动了罐子。一开始,我将其删除,并在我的类路径的根目录中保留一个引用。然后最后,我只是将其复制回来:例如

    <delete file="lib/xmlparserv2.jar"/>
    <!--run lots of tests-->
    <copy todir="lib" file="xmlparserv2.jar"/>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多