2013-11-20 41 views
7

自从最新的java发行版(7u45)以来,由于缺少新需要的清单属性,我在第三方jar库中发现了大量错误,这是我的webstart应用程序使用的:使用蚂蚁将清单属性添加到现有的jar文件中

Missing Application-Name: manifest attribute for: http://site/lib/jh.jar 
Missing Permissions manifest attribute for: http://site/lib/jh.jar 
Missing Codebase manifest attribute for: http://lib/jh.jar 

因此,我需要运行一个批量ant任务来更新30个左右所需的库中的每个清单文件,然后才能使用它们进行分发。

我该如何在蚂蚁中做到这一点? (最好没有ant-contrib)

PS:我已经修复了所有其他7u45更新废话(代码签名,JNLP attribs等)。

回答

11

尝试类似这样的事情。

<for param="jarFile"> 
     <fileset dir="${webapp.dir}"> 
      <include name="*.jar"/> 
     </fileset> 
     <sequential> 
      <jar update="true" file="@{jarFile}"> 
       <manifest> 
        <attribute name="Application-Name" value="ABCDEF"/> 
        <attribute name="Codebase" value="*"/> 
        <attribute name="Permissions" value="all-permissions"/> 
       </manifest> 
      </jar> 
     </sequential> 
    </for> 
+0

应该由包围,否则这是一个很好的解决方案,谢谢! – foch

+0

是一个ant-contrib。 :( –