2010-07-15 123 views
12

我們正在尋找Java web start的替代方案,它可以有效地完成同樣的任務,只是更好地實施。我們遇到了很大的麻煩。我們有幾個XP桌面辦公室,都略有不同,迄今爲止只有少數幾個辦公室沒有經過嚴格的調整。問題在於如果代理設置不正確(使用Java控制面板中的直接連接允許它工作),拒絕在設置像「-Xmx」這樣的參數時運行,但當它們不運行時運行正常(直到它運行內存不足)以及其他我們無法解決的奇怪問題。java web start alternative

網絡啓動的方式正是我們想要的,即連接到具有應用程序的服務器,下載任何已更改的內容,保留罐子緩存等。其他團隊在這裏使用'clickonce'作爲C#應用程序,它確實有效,但似乎不那麼麻煩。

我相信我們並不是唯一遇到過這個問題的人,但是四處搜尋並沒有真正顯示出任何替代方案。我們已經研究過編寫一個存根本地應用程序,它基本上只是一個URLClassLoader,可以通過網絡即時加載我們的應用程序,但不幸的是,這對其他辦公室而言太慢了。有人有主意嗎?

感謝

更新

如果有些人好奇,什麼最終發生的事情,我們給在webstart再過一個月左右,但繼續下去,以便我們實現了自己的版本遇到問題。它基本上只是一個存根,具有一個URL類加載器,您可以指向一個Web服務器。這是< 200行代碼,它已經運行了好幾個月。這是不理想的,但直到有人改善webstart我們會堅持下去。

+0

我認爲你應該寫一些關於你的實際問題的文章,因爲我相信你現在最好的地點是解決它們,而不是遷移到Eclipse更新站點等其他技術。 – 2010-07-15 10:33:46

+0

目前我們只是逐個解決問題,但我認爲可能會有一個不太麻煩的替代方案。然而,令人鼓舞的是,人們的建議一直是堅持網絡開始,我想它一定適用於某些人。 – Dave 2010-07-15 11:00:31

+0

Java RMI如何?製作一個GUI應用程序,它依賴於一組類並從某個中央服務器遠程獲取它們的實現。這個主題有一個[Java SE trail](http://docs.oracle.com/javase/tutorial/rmi/)。 – 2013-04-20 15:49:16

回答

8

我的公司也遇到webstart的痛苦,特別是jre 1.6 update 19和20。我們的問題圍繞混合代碼安全警告展開。 (一切正確簽署和問題是間歇性的)

Anyhoo我偶然發現了由threerings getdown。我還沒有嘗試過,但似乎很有希望http://www.threerings.net/code/getdown/

+0

我們剛剛碰到過,手指越過它就是我們正在尋找的東西。同樣令人鼓舞的是,網絡開始的時候,最終放棄了,並寫了一個替代方案。 – Dave 2010-07-26 12:56:32

+1

混合代碼問題真的很煩人。 – 2011-07-18 17:01:02

+0

我知道在JDK1.6_20左右發現了一個主要的Twitter錯誤,它導致了JDK中的SSL更改。我不記得細節,但如果我沒有記錯的話,它可能與證書驗證或主機名驗證者有關。我認爲如果你掃描版本說明,你可能會發現某些東西給你一個線索。 – djangofan 2012-06-22 02:41:57

2

我發現你所有的問題都很奇怪。我在一家公司使用JWS分銷其交易軟件的某段時間內工作過,而且它一直工作得很好。在放棄整個技術之前,你有沒有考慮看看the unofficial Java web start FAQ

+2

獲得支持合同可能是一個想法...(披露:我爲甲骨文工作。) – 2010-07-15 10:33:26

+1

注意:鏈接的FAQ是非常古老的。 Sun在Java 6 update 10中對JWS進行了重大改進。 – 2010-07-15 10:34:17

+1

我們一直在使用常見問題解答,我們正在使用java 6 update 20以獲得所有新的改進。問題是有很多問題,不應該存在,應該是非常簡單的。我們的選擇是繼續按照我們一直在做的那樣逐個解決問題,不知道要多久才能繼續下去,或者放棄技術並去尋找其他的東西。 – Dave 2010-07-15 10:59:12

2

我們也使用JWS很多,並且自從1-6_19開始它就開始變得很痛苦。有些應用程序啓動了1-6_19,其他應用程序則沒有更新到1-6_20,這是相反的情況。然後更新至1-6_21/2/3/4,問題只會改變。我們可能會放棄。它看起來像是自甲骨文接手改變以來的開發團隊。否則,沒有其他解釋讓JWS變得更糟,然後變得更好。

5

我在我的公司廣泛使用JWS。只有當您嘗試從緩存中運行JWS並且客戶端計算機剛剛升級到較新版本的Java時,我纔看到JWS的唯一真正問題。該應用程序將無法啓動「無法啓動」,「緩存文件未找到」錯誤或類似的東西。

我有兩種方法可以解決這個問題:我清除緩存並讓它們重新安裝應用程序,或者讓他們再次從我的網站上點擊URL(對我的用戶來說最簡單)。在這兩種情況下,問題都解決了。這可以解釋爲什麼幾個開發人員在這裏永遠不會看到這個問題,很可能是因爲他們的用戶總是點擊一個URL而不是已安裝的啓動器。

作爲一種變通方法,並在我的一些關鍵任務的應用程序,我用一個腳本中下列之一:

Java的罐子netx.jar -jnlp http://url/to/my/launch.jnlp

javaws的http://url/to/my/launch.jnlp

其中netx是第三方庫。

這不是最漂亮的解決方案,但對我來說,這些工作是100%的時間。

現在,如果我只能弄清楚如何讓桌面快捷方式不會下地獄......但這是另一次的討論。

+0

你對netx有足夠的實際經驗來評估它嗎? – 2011-07-18 17:06:03

2

GetDown似乎也是片狀的。我只是嘗試了一些他們在遊戲中做廣告的遊戲網站。他們都未能加載我的Firefox。也許我的Java到Firefox的整合是責任?我已經在JDK 1.6 64位之後安裝了JRE 7 32位。

很多時候,Web Start問題和糟糕的用戶體驗都與Java在用戶計算機上的安裝方式有關。在Windows上,我注意到如果在較新版本之後安裝較舊版本的Java(期望兩者將共存),我開始遇到運行applet和WS應用程序的問題。

+0

我同意你的意見。我從來沒有成功地使用GetDown安裝軟件。它沒有做它所宣稱的。即使系統上安裝了單個JDK,它也不起作用。 – gouessej 2018-01-10 15:56:10