問題タブ [install4j]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
527 参照

install4j - install4jは、バンドルされたjvmおよびWindowsアーカイブメディアタイプで問題が発生します

この質問は、install4j4.2.8に関するものです。

install4jを使用して、Javaアプリケーション用の「Windowsアーカイブ」タイプのメディアファイルを作成しています。ほとんどのユーザーは.exeインストーラーをダウンロードできますが、一部のお客様はmsiを必要としているため、サードパーティのツールを使用して作成されたmsiの基礎としてこの.zipアーティファクトを使用します。

これは、バンドルされたjre(非共有)を組み込む場合を除いて、正常に機能します。デフォルトでは、install4jはpack200アルゴリズムを使用してjre階層内の特定のjarファイル(rt.jarなど)を圧縮し、ランチャー実行可能ファイルが最初に実行されたときにそれらを解凍するようです。

このプロセスは、exeインストーラーからインストールされたインストールでは明らかに正常に機能しますが、msiインストール(前述のようにWindowsの.zipアーティファクトから作成されたもの)からは多くの場合失敗するようです。install4jのマニュアルを調べて、この圧縮をオフにする方法があるかどうかを確認しましたが、jreバンドル作成ツールにはそのようなパラメーターがないようです。そして、振る舞いは良いので、それなしでやらなくてもいいでしょう。

ある状況で開梱プロセスが失敗する理由について何か考えはありますか?

0 投票する
1 に答える
184 参照

png - install4j スプラッシュ画面の無効な PNG ファイル

install4j でスプラッシュ画面として使用する PNG ファイルを (GIMP で) マイナーな編集を行いました。install4j は、次のスタック トレースとエラーで失敗するようになりました。

install4j: コンパイルに失敗しました。理由: com.ABE: com.ABE: ファイル splash.png は有効な画像ファイルではありません。

以前はすべてが正常に機能していたのに、失敗する原因となる PNG ファイルの変更点は何ですか?

0 投票する
2 に答える
376 参照

install4j - ポートが利用できないときにインストーラーを強制的に失敗させますか?

install4jを使用して、HTTPおよびHTTPSポートを必要とするイントラネットアプリケーションをインストールしています。これらのポートが使用可能であることをテストし、使用できないポートを選択するまでユーザーに警告/インストールをブロックしたいと思います。

これについて私が見る唯一の方法は(カスタムコードを除いて)、アプリケーションが必要なポートにバインドできない場合にWindowsサービスが失敗することを確認し、失敗戦略「失敗時に再試行するか終了するかをユーザーに尋ねる」を使用することです。Webサーバーの起動コードでは、サーバーがポートにバインドできない場合はSystem.exit(1)を使用します。ただし、これはインストーラーの障害として登録されているようには見えません。インストールは、障害戦略を呼び出さずに続行されます。

「サービスの開始」アクションに失敗を通知するための適切なアプローチは何ですか?他の人は、インストールで使用可能なポートを使用することを保証するために別のアプローチを取りましたか?

0 投票する
1 に答える
107 参照

install4j - 試用版を使用して telnet 経由で Wi​​ndows インストーラーを実行するにはどうすればよいですか?

社内でinstall4jを評価しています。

win32 インストーラーをビルドし、それをテストするために継続的インテグレーション環境をセットアップしようとしています。

CI サーバーは、FTP を使用して Windows ターゲット マシン (仮想化環境) にインストーラーをアップロードし、次のようなバッチ スクリプトを実行できます。

現在、install4j 5 の試用版を使用しています。

コマンド ライン (リモート デスクトップ経由の cmd.exe) からインストーラーを実行すると、試用版について警告するポップアップ ウィンドウが表示されます。[OK] をクリックするまで、インストールはフリーズします。

インストーラーを telnet から実行すると、コマンドがハングアップし、戻りません。その理由はそのポップアップウィンドウだと思います。

install4j を完全に評価するには、それが CI プロセスにどのように適合するかを確認できる必要があります。

これに対する回避策はありますか?

0 投票する
1 に答える
875 参照

install4j - install4j は *完全に* 無人の自動更新を提供しますか?

現在、install4j の評価を行っており、順調に進んでいますが、自動更新について質問があります。現在、自動更新の 3 つのオプションに関するオプションとドキュメントを確認していますが、3 番目のオプション (バージョン チェックなし) が必要なものに最も近いようです。ただし、ユーザーに実際にダウンロード/インストールを開始するように促すように聞こえます。これを回避する方法はありますか?サーバー ルームの多くの Windows ボックスでサービスとしてのソフトウェアをターゲットにしているため、その最後のステップで [続行] をクリックするユーザーはいません。プロンプトが表示されないように応答ファイルを使用してコマンド ライン インストールを実行するアップグレードを監視する独自のサービスを展開できると思いますが、install4j の自動更新を利用できるようにする何かを見逃していないかどうか知りたいです。

0 投票する
1 に答える
337 参照

install4j - install4jは、デフォルトディレクトリの再インストール/アップグレード時に以前のインストールを無視できますか?

install4jインストーラーに、以前のインストールディレクトリを使用せずに、常にデフォルトのインストールを提案させるにはどうすればよいですか。

ディレクトリをメディアに追加し、[インストール場所]画面で[アプリケーションディレクトリの提案]をオンにしましたが、それでも望ましくない動作が発生します。

望まれる行動:

  • ユーザーがインストールしたC:\ Program Files \ My App 1.0.0 \
  • 2.0用のrunsinstallerを使用すると、C:\ Program Files \ My App2.0.0\でプロンプトが表示されます。

現在の動作:

  • ユーザーがインストールしたC:\ Program Files \ My App 1.0.0 \
  • 2.0用のrunsinstallerを使用すると、C:\ Program Files \ My App1.0.0 \でプロンプトが表示されます。

助けてくれてありがとう

ピーター

0 投票する
3 に答える
880 参照

macos - ダウンロードすると OSX 署名が壊れますか?

OSX デスクトップ アプリの署名を開始したばかりなので、OSX 10.8 に簡単にインストールできます。署名が正常に機能し、dmg が DropBox または FTP によって Mac に転送された場合はインストールできますが、dmg がサーバーにアップロードされてからブラウザーを使用して Mac にダウンロードされた場合、署名が失敗するという非常に奇妙な問題が発生しています。 (ユーザーには、ファイルが署名されていない場合と同じエラーが表示されます)。

背景: アプリケーションは Java であり、Install4J で Apple の .p12 を使用して署名されています。興味深いことに、署名されていない、またはダウンロードされた DMG の場合、OSX 10.8 が示すエラーは非常に奇妙で、インストーラーが「破損している」ため、マウントを解除する必要があると表示されます。

ブラウザーで DMG をダウンロードしたときに署名が失敗する理由を知っている人はいますか?

0 投票する
1 に答える
425 参照

launcher - install4jは、ランチャーがUIまたはコンソールアプリケーションランチャーであるかどうかをどのように確認できますか?

コンソールまたはUI(プレーンテキストとHTMLテキスト)で実行している場合は、別のライセンステキストを表示したいと思います。画面の条件でこれを実行できると思いますが、実行されているランチャーの種類を判別する方法がわかりません。

LauncherSetup.getType()を使用して、実行中のLauncherのIDを把握できれば、LauncherSetup getLauncherById(java.lang.String id)を取得できると思いますが、実行中のLauncherのIDを取得する方法がわかりません。

この状況の解決策があれば教えてください。今なら、launcherIDを取得する方法がわかったら、コードを投稿します

ありがとう

ピーター

0 投票する
1 に答える
117 参照

install4j - 設定可能なバナー形式のバナーはありません

「設定可能なバナーフォーム」を追加しました。「バナーの画像」をリセットすることをクリアすると、バナーにはデフォルトのバナーが表示されます。バナーは要りません。どうすればこれを実装できますか?

「設定可能なバナーフォーム」の「画面タイトル」のフォントも変更したいのですが。これは可能ですか?これをどのように実装しますか?

0 投票する
1 に答える
624 参照

install4j - カスタムプロキシ設定でinstall4jアップデータを呼び出す

Install4Jでラップされたアプリケーションで次のことを実行したいと思います。

  • ラップされたJavaアプリのコードからInstall4Jアップデーターを呼び出す
  • 利用可能なアップデートがある場合は、Install4JIDEで構成されたGUIダイアログをユーザーに表示します
  • 必要に応じて、カスタムプロキシパラメータをアップデータに渡します

Install4Jを理解できる限り、次の方法で実行できるはずです。

しかし、プロキシの詳細を入力するためのポップアップが表示され続けます。

プレフィックスが「-D」にならないようにパラメーターを変更し、アップデーターをコンソールモードまたは無人モードに切り替えて、パラメーターを渡さずに、System.setProperty()を使用して直接JVMに配置しようとしましたが、成功しませんでした。私はいつもプロキシポップアップまたは「アップデート情報を____からダウンロードできませんでしネットワーク設定を確認してください」というメッセージで終了しました。

また、アップデータを繰り返し呼び出したが、パラメータが異なる場合、最初の呼び出しで使用したものが常にポップアップに表示されます。

何か助けはありますか?前もって感謝します。