2014-07-24 40 views
0

我有一個Java Webstart應用程序,它是通過網絡啓動的。因此,服務器的主機名和JNLP文件的主機名隨服務器的IP而變化。
webstart在桌面上創建一個快捷方式。
每次啓動時重新創建Java Webstart快捷方式並在桌面上移動

問題是,每次啓動時都會重新創建快捷方式,因此它在桌面上的位置(至少在Windows下 - 在XP和Windows 7上測試過)每次都會更改。
直到快捷方式被重命名爲止。之後,它的行爲,就像它應該和不再被重新創建。

是否有人知道,爲什麼會發生這種情況,以及如何避免它(自動 - 意思是不要手動重命名快捷方式)。

下面是一個JNLP文件的一個示例:

<jnlp spec="1.0+" codebase="http://localhost:8080/myapp/" href="http://localhost:8080/myapp/MyApp.jnlp"> 
    <information> 
    <title>MyApp</title> 
    <vendor>MeAndI</vendor> 
    <homepage href="http://www.MyApp.com"/> 
    <description>The client for MyApp </description> 
    <description kind="tooltip">The client for MyApp </description> 
    <icon href="http://localhost:8080/myapp/icon.png" kind="default"/> 
    <icon href="http://localhost:8080/myapp/icon.ico" kind="shortcut"/> 
    <shortcut online="true" install="false"> 
     <desktop/> 
     <menu submenu="MyApp"/> 
    </shortcut> 
    </information> 
    <security> 
    <all-permissions/> 
    </security> 
    <update check="timeout" policy="always"/> 
    <resources> 
    <java initial-heap-size="268435456" max-heap-size="536870912" version="1.5+"/> 
    <jar href="http://localhost:8080/myapp/MyAppClient.jar" download="eager" main="false"/> 
    <!-- some more jar referemces ... --> 
    </resources> 
    <application-desc main-class="com.meandi.myapp.core.gui.LoginScreen"/> 
</jnlp> 

預先感謝您。

問候,Schorsch。

回答

0

這是一個古老的問題,但我希望這對某人有用。

爲什麼圖標總是重建和移動桌面上的理由是:

  1. 有一個在JNLP元素沒有定義版本屬性。由於更新策略設置爲「始終」,WebStart將始終重新安裝應用程序,並重新創建圖標。
  2. Windows有一個規則來添加新的桌面圖標。這取決於您是否將Windows設置爲對桌面圖標進行排序,但大多數人會手動執行 - 在這種情況下,新圖標將從左上角到右下角的第一個可用空間,在水平之前垂直排列。
+0

我可以統治2.指出,至少對於我的情況,但它可能是版本的事情。 謝謝。 – Schorsch

+0

我自己現在已經有了圖標重新創建的問題,我的搜索引導我回到了這裏。具有諷刺意味的。在我的JNLP中,我定義了版本,我的更新策略是提示,並且我檢查了Java部署緩存中的項目--JAR本身未重新部署,但桌面圖標是單擊圖標時。 –

+0

我終於找到原因。每次都重新安裝Web Start,因爲我指定了多個不同大小的圖標。我刪除了其中的一個,Web Start已停止重新創建快捷方式。 –

相關問題