2012-01-29 60 views
0

我在我的小程序中使用第三方庫,打包在JAR中,它要求在用戶計算機上具有完全權限並提供安全證書。我沒有將它用於需要權限的任何目的。有沒有辦法修改JAR,以便在訪問時不再請求這些權限?如果我從JAR中刪除安全證書並重新壓縮它,它會起作用嗎?更改第三方JAR的安全權限?

回答

1

有許多方法可以去除數字簽名。

  1. 使用Jar工具提取Jar,然後創建一個新的Jar類&資源。
  2. 使用Ant來做同樣的事情。
  3. 將文件擴展名更改爲.zip,並在Zip工具中將其打開,以便您刪除META-INF目錄。然後重新命名爲.jar。醜陋的黑客,可能有副作用。

如果我從JAR中刪除安全證書並重新壓縮它,它會起作用嗎?

有可能是它正在做的事情,需要信任,但不立即明顯。如果是這樣,Java控制檯應該會有所幫助。在Oracle JRE上,您可以拒絕安全提示來檢查此問題,代碼將被加載到沙箱中。這對於Iced Tea JRE不起作用,如果用戶拒絕信任對話框,根本不會加載該applet。

+0

謝謝 - 你是對的,我只需要用zip程序解壓縮它,刪除META-INF目錄,然後用jar工具重新壓縮它。謝謝您的幫助! – davecom 2012-01-29 08:59:29