2009-10-21 17 views
3

我試着將manifest.file=${src.dir}/manifest.mf添加到project.properties中,但通過build-impl.xml查看,我發現manifest.available通常伴隨着main.class條件,所以它使我相信我的清單隻有在包有main類,我的,作爲一個圖書館,沒有。無論我嘗試了什麼,結果庫jar都只包含自動生成的清單,只有Ant-Version和Created-By。是否可以將自定義清單添加到在Netbeans 6.7.1中編譯的Java庫中?

+0

您是否有權訪問jar生成命令/或者您是否可以修改/調整/覆蓋它?然後你可以用你自己的清單來進行討論。 – 2009-10-21 07:13:01

回答

2

我結束了在build.xml,這是因爲它讓我的清單更新後,還添加了Sign任務真的很好添加Jar任務:

<target name="-post-jar"> 
    <jar destfile="${dist.jar}" 
     update="true"> 
     <manifest> 
     <attribute name="Built-By" value="..."/> 
     <attribute name="Specification-Title" value="..."/> 
     <attribute name="Specification-Vendor" value="..."/> 
     <attribute name="Specification-Version" value="..."/> 
     <attribute name="Implementation-Vendor" value="..."/> 
     <attribute name="Implementation-Title" value="..."/> 
     <attribute name="Implementation-Version" value="..."/> 
     </manifest> 
    </jar> 
    <signjar jar="${dist.jar}" 
     alias="..." 
     keystore="..." 
     storepass="..."/> 
</target> 
2

爲了得到一個簡單的編輯清單.MF的上述一個變形例是重寫「-post-罐子」任務在等的build.xml:

<target name="-post-jar"> 
     <jar destfile="${dist.jar}" 
     update="true" manifest="src/META-INF/MANIFEST.MF"> 
     </jar> 
</target> 

以及創建包「META-INF」(也可以用於像其他調整一個「mime.types」文件)和一個名爲「MANIFEST.MF」的空文件,然後可以在NetBeans編輯器內進行編輯,例如包含:

 
Manifest-Version: 1.0 
Foo: Bar 
See: Jar_File_Spec 

這種方式所測試:
產品版本:NetBeans IDE的6.9.1(生成201011082200)
爪哇:1.6.0_21; Java HotSpot(TM)64位服務器虛擬機17.0-b16
系統:Linux版本2.6.32-29-在amd64上運行的泛型; UTF-8; de_DE(nb)

相關問題