1
我正在構建一個Eclipse插件,我想用帶簽名的jar包來交付。如何防止jarsign腳本覆蓋已簽名jar中的已有Manifest值?
使用Eclipse UI創建更新站點並從那裏手動構建插件和功能後,我想簽署創建的jar。
這樣做會導致罐子中的清單丟失其OSGI元信息屬性,因此在重新啓動eclipse後無法找到插件。只有簽署信息留在Jars的清單中。
我用這個片段簽署文物,但我也可以重現此問題與JDK工具jarsign:
<signjar alias="${keystore.alias}" keystore="${keystore}"
storepass="${keystore.password}"
lazy="true" tsaurl="http://time.certum.pl/">
<path>
<path refid="plugins"/>
<path refid="features"/>
</path>
</signjar>
從我使用所提供的艙單從插件這樣一個插件:
Bundle-ManifestVersion: 2
Bundle-Name: Tomcat Manager Plugin
如何在簽名時保留現有的清單?
您可以使用eclipse.jarsigner ant任務。我們把它用在我們的項目上,它像yolu一樣工作。我沒有關於jarsigner任務的信息。也許它也有一個屬性行keepmanifest或useexistingmanifes ... – guleryuz
我不知道你的意思是與eclipse.jarsigner螞蟻任務。我使用ant自身提供的默認ant任務進行jarsigning:https://ant.apache.org/manual/Tasks/signjar.html – Markus
抱歉,任務名稱是eclipse.jarProcessor,它具有jar簽名屬性。 sign =「true」會在點擊現有清單的同時在jar上簽名 – guleryuz