在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 file META-INF/wsdl/someWsdl.wsdl was found and the duplicate attribute is 'fail'.
wsdl应该存在,因为在构建jar之前我会执行wsimport并编译生成的类。
答案 0 :(得分:0)
documentation有一节解释重复属性背后的原因:
请注意,zip格式允许在同一个存档中存在多个具有相同完全限定名称的文件。这已被记录为导致毫无戒心的用户的各种问题。如果您希望避免此行为,则必须将duplicate属性设置为默认值“add”。
您确定没有多个文件副本“someWsdl.wsdl”吗?