0

在 Ant1.8 中,我有这样的任务:

 <jar destfile="@{destfile}.jar"
      duplicate="fail"
      manifest="@{srcfolder}/META-INF/MANIFEST.MF">       
    <fileset dir="${build_folder}/" excludes="${test_package}/**"/>
    <fileset dir="@{srcfolder}"  includes="**/*.xml" />
    <fileset dir="@{srcfolder}"  includes="**/*.properties" />
    <fileset dir="@{srcfolder}"  includes="**/*.wsdl" />
    <manifest>
       <attribute name="@{manifest-title}" value="@{manifest-name}"/>
    </manifest>
 </jar>

duplicate="fail" 应该做什么?我不断收到这样的错误:

Duplicate file META-INF/wsdl/someWsdl.wsdl was found and the duplicate attribute is 'fail'.

wsdl 应该在那里,因为就在构建 jar 之前,我执行 wsimport 并编译生成的类。

4

1 回答 1

0

文档有一个部分解释了重复属性背后的原因:

请注意,zip 格式允许具有相同完全限定名称的多个文件存在于单个存档中。这已被记录为会给毫无戒心的用户带来各种问题。如果您希望避免这种行为,您必须将重复属性设置为默认值“add”以外的值。

您确定您没有超过一份文件“someWsdl.wsdl”吗?

于 2013-07-28T22:43:06.220 回答