我在我的appliation的jnlp描述符中使用快捷方式標籤來爲我的應用程序創建桌面鏈接和菜單條目。如何重新創建webstart應用程序的快捷方式?
如果這些快捷方式在客戶端上被刪除 - 他們如何重新安裝沒有用戶操作?有沒有jnlp文件的配置選項?
(順便說一句,我使用的Java6)
我在我的appliation的jnlp描述符中使用快捷方式標籤來爲我的應用程序創建桌面鏈接和菜單條目。如何重新創建webstart應用程序的快捷方式?
如果這些快捷方式在客戶端上被刪除 - 他們如何重新安裝沒有用戶操作?有沒有jnlp文件的配置選項?
(順便說一句,我使用的Java6)
請參考,這個鏈接 - http://mindprod.com/jgloss/javawebstart.html
摘要:如果你想JWS重新 菜單和/或桌面快捷方式,刪除 兩個菜單項和桌面 圖標,然後在 命令行上運行javaws -viewer,然後單擊按鈕到 創建快捷方式。如果其中一個 存在,則javaws.exe將不會創建其他的 。它也可能不會創建你想要的地方 ,所以看看周圍的 。
謝謝! BUT:按照所描述的方式,用戶需要在客戶端上手動完成此操作 - 如果這可以自動完成,則會更好。在從web啓動時,java會檢查快捷方式是否存在 - 如果沒有,請安裝它們! – 2009-08-26 07:17:19
javaws上針對Java6的docs顯示您可以使用可執行文件啓動應用程序或執行他們稱爲控制選項的維護操作。
這些選項中的兩個是:
javaws -uninstall <jnlp>
javaws -import [import-options] <jnlp>
,你可以做的事情之一是
javaws -import -silent -shortcut <jnlp>
所以,如果你可以運行一個腳本,先卸載你的特定的JNLP應用,然後默默地重新 - 輸入它及其快捷方式,那麼這將解決您的問題。我不認爲Java會自動爲你做這件事。
請注意,文檔說它必須是無提示安裝的快捷方式選項才能工作。另外,我沒有再檢查一下,這實際上是自己工作的。
我只是想在上面的解決方案上添加一條評論,以免它節省任何時間。
IF您的應用程序安裝在Webstart的緩存,但該快捷方式已被刪除(類似於Java更新過程中,或者用戶刪除)的javaws的-import -silent -shortcut 將不只是重新創建快捷方式爲應用程序。至少1.6.0_u35和u37。
似乎WebStart檢查應用程序是否在緩存中,如果是,它只是退出而不創建快捷方式。非常令人失望...
注意:這似乎仍然是Java 7更新51中的情況 – 2014-04-29 11:01:05
這裏是自動方式的骨架(你在classpath這需要javaws.jar
工作):
IntegrationService is = null;
try
{
is = (IntegrationService) ServiceManager.lookup("javax.jnlp.IntegrationService");
}
catch (UnavailableServiceException use)
{
// integration service unavailable
}
if (!is.hasDesktopShortcut())
{
if (!is.requestShortcut(true, true, "Companyapp"))
{
// failed to install shortcuts
}
}
else
{
// shortcuts already exist
}
如果有人得到了一個解決方案,我很感興趣呢!謝謝! – Szundi 2009-10-01 13:57:58