10

アプリケーションの jnlp 記述子でショートカット タグを使用して、アプリケーションのデスクトップ リンクとメニュー エントリを作成します。

これらのショートカットがクライアントで削除された場合、ユーザーの操作なしで自動的に再インストールするにはどうすればよいですか? jnlp ファイルの構成オプションはありますか?

(ところで、私はJava6を使用しています)

4

4 に答える 4

5

これは自動方法のスケルトンです(これが機能するにはクラスパスが必要です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
}
于 2013-03-05T10:12:12.123 に答える
3

javaws上のJava6のドキュメントには、実行可能ファイルを使用してアプリを起動するか、制御オプションと呼ばれるメンテナンス操作を実行できることが示されています。

それらのオプションの2つは次のとおりです。

javaws -uninstall <jnlp>
javaws -import [import-options] <jnlp>

あなたができることの一つは

javaws -import -silent -shortcut <jnlp>

したがって、最初に特定のjnlpアプリをアンインストールしてから、そのアプリとそのショートカットをサイレントに再インポートするスクリプトを実行できれば、問題は解決します。Javaが自動的にこれを行うとは思いません。

ドキュメントには、ショートカットオプションが機能するためにはサイレントインストールである必要があると記載されていることに注意してください。また、これが実際に自分で機能することを再確認していません。

于 2012-05-10T07:45:04.990 に答える
3

このリンクを参照してください - http://mindprod.com/jgloss/javawebstart.html

概要:JWS でメニューやデスクトップ ショートカットを再作成する場合は、メニュー項目とデスクトップ アイコンの両方を削除してから、コマンド ラインで javaws -viewer を実行し、ボタンをクリックしてショートカットを作成します。どちらかが存在する場合、javaws.exe はもう一方を作成しません。また、期待していた場所に作成されない可能性もありますので、周りを見てください。

于 2009-08-26T05:45:37.303 に答える
1

誰かの時間を節約できるように、上記のソリューションにコメントを追加したかっただけです。

アプリケーションがWebStartキャッシュにインストールされているが、ショートカットが削除された場合 (Java の更新時やユーザーが削除した場合など)、 javaws -import -silent -shortcut はアプリケーションのショートカットを再作成するだけではありません。少なくとも 1.6.0_u35 と u37 では。

WebStart は、アプリケーションがキャッシュ内にあるかどうかを確認するように見えます。キャッシュ内にある場合は、ショートカットを作成せずに終了します。期待はずれの...

于 2012-11-07T17:21:50.080 に答える