2013-07-02 29 views
4

我有一個webstart應用程序,其中所有的jar都被簽名(我自己和第三方)。當Java7u25加載它,我看像Java控制檯以下錯誤消息:加載webstart應用程序時關於丟失的Codebase屬性的錯誤消息

Missing Permissions manifest attribute for: http://example.com/webstart/application-jars/commons-beanutils-1.8.3.jar 
Missing Codebase manifest attribute for: http://example.com/webstart/application-jars/commons-beanutils-1.8.3.jar 

我在7u25這裏的變化讀了起來:http://blog.eisele.net/2013/06/java-se-7-update-25-release-notes.html

通知上說,到指定的codebase屬性JAR在構建時的清單,並使其與JNLP文件中的代碼庫相匹配。這應該如何設置爲像commons-beanutils這樣的第三方jar,它顯然沒有這個清單條目?

+0

我有完全相同的問題。我正在努力解決它。如果你找到答案,請發表一個答案。 – ryvantage

+0

這個問題的答案(http://stackoverflow.com/questions/17275384/missing-codebase-manifest-attribute-forxxx-jar)似乎是在同一個球場,但正如你可以通過我的評論看到答案,他的解決方案並不適合我,因爲我有一個錯誤。 #StillLookin #Ugh – ryvantage

回答

0

如果你自己簽署jar文件(第三方和你自己的),你可以添加必要的參數到第三方jar文件manifest.mf(打開他們的檔案實用工具,例如在Ubuntu的檔案管理器或嘗試使用7-zip等windows)將參數添加到你自己的jar文件清單中(重新打包它們,在ubuntu中,當你編輯後關閉文件時會自動發生,我不確定你是否在windows上)以及然後建立你的應用程序/簽署所有的罐子。

這對我有用,但我確信有更好的方法來做到這一點。

+0

打開第三方jar並添加到它的清單可以嗎?這是我擔心的Codebase工作,我將需要在部署時更新所有罐(我的+第三方),這是低效和容易出錯的國際海事組織。 – Raylite3

+0

嗯,這取決於我猜的第三方罐子許可證。我懷疑有人反對向清單中添加屬性。關於它的效率,這是費時的,但你只需要爲每個罐子做一次。 –

+0

是的,我想這是做到這一點的方法,我們必須爲第三方jar添加清單條目。 – Raylite3

0

如果您無法簽名,請參閱this answer,以便爲應用程序的網站添加例外。

相關問題