2012-08-17 190 views
2

我想簽署一個jar文件,其中包含另一個jar文件和一些類文件。 其實我知道如何簽署一個jar文件,我做到了,但在這裏我有一個小程序文件,我在其中使用Apache的HttpClient,但是當我從瀏覽器運行它時,它提供了一個錯誤org.apache.commons.httpclient方法未找到。所以我該怎麼做? 當我在小應用程序查看器上運行此applet時,它運行但來自瀏覽器不能。 請幫幫我。如何簽名包含另一個jar文件的jar

+0

簽署您在項目中使用的jar文件。當你的項目建立時,簽署包含簽名jar文件的主jar文件。 – 2012-08-17 09:01:35

回答

3

如果您需要執行只有簽名的代碼,你不應該包括JAR文件到您的小程序 - 而應該只包括從類文件包含在你的applet中的Jar。

如果您之後對代碼進行了簽名,那麼jar中的類文件也會得到簽名,因此應該可以在applet中使用。

+0

感謝您的重播,假設我的類依賴於其他庫,如apache的HttpClient,HttpMethod;那麼我應該只將這些文件包含在我的主jar文件中並簽名?或者洞apache jar文件應該包含標誌? – Balasaheb 2012-08-17 10:29:40

+0

感謝,它的工作... – Balasaheb 2012-08-17 10:57:12

+0

如果您想最小化最終的JAR文件大小,您可以在無混淆和不優化模式下使用ProGuard工具。這將刪除未使用的類和方法,但它需要大量測試和一些配置,因爲最小化的應用程序通常不能直接使用。 – Robert 2012-08-17 12:32:04

0

我覺得下面的步驟應該有所幫助:

  • 登錄使用的是項目中的所有jar文件

  • 確保所有庫jar文件包含到最終的應用程序jar文件

    主jar清單文件應該包含Class-Path關鍵字,其中包含jar文件的相對路徑。

  • 當主要的應用是建立標誌的主要應用程序的jar文件