5

クライアント向けに展開しやすくする必要がある Web アプリケーションがあります。新規インストールの現在のワークフロー:

  • マシンに JRE があることを確認します (32 ビットまたは 64 ビット)
  • Tomcat (32 または 64 ビット) をインストールします。
  • Oracle または SQL Server でデータベースを作成します (これには SQL スクリプトが用意されています)。
  • ホスト名など、いくつかの値を設定テーブルに書き込みます。(ユーザーにこれらを確認してもらうことはできますが、ユーザーがそれらをタップする必要はありません。
  • Tomcat の下に配置される接続プロパティ ファイルを作成します (これを支援するためのミニ JAR アプリを提供します)。
  • 実際の Web アプリケーション用に 2 つの WAR ファイルがあります。これらは 2 台のマシンに分割できますが、ここでは両方とも Tomcat でダンプされると仮定します。
  • Tomcat を起動して、WAR をデプロイします。

これはユーザーにとって面倒なプロセスです。私はそれをインストーラーにカプセル化したいと考えており、これを NSIS で行うことを検討してきました。NSIS は大きなコミュニティを持っているようですが、それから install4j に出くわしました。 Java ベースのアプリケーションに固有です。

プラットフォームの最適な選択について、経験豊富なユーザーからフィードバックを得たかっただけです。

途中で入りたくないのに、間違ったインストーラ プラットフォームを選択したことに気付きます。

4

1 に答える 1

11

免責事項:私の会社はinstall4jを開発しています。

まず第一に、install4jは商用ツールであるため、NSISとはかなりの違いがあります。その他の主な違いは次のとおりです。

  • install4jは、Windows、Mac OS X、およびすべてのPOSIX互換のLinuxおよびUnixプラットフォーム用のマルチプラットフォームインストーラービルダーです。
  • install4jの主な焦点は、Javaベースのアプリケーションをインストールすることです。たとえば、ランチャーとサービスの作成を処理し、JREをバンドルするためのいくつかの戦略を提供します。Javaアプリケーションに必要な多くのものは、箱から出してすぐに機能します。
  • install4jは、使いやすさに重点を置いた独自のIDEを提供します
  • スクリプトはJavaで行われます。IDEは、コード補完とエラー分析を備えた組み込みエディターを提供します。アクション、画面、およびフォームコンポーネントには、インストーラーの動作をカスタマイズできるさまざまな「スクリプトプロパティ」があります。

install4jの場合、私はあなたの単一の要件に対処することができます:

マシン(32ビットまたは64ビット)にJREがあることを確認します

メディアウィザードで、JREバンドルを選択します。「動的バンドル」オプションを選択すると、適切なJREが見つからない場合にのみダウンロードされます。

ここに画像の説明を入力してください

Tomcatのインストール(32または64ビット)

既存のTomcatインストールのルートディレクトリを配布ツリーに追加することをお勧めします。

サービスに関しては、TomcatディストリビューションのTomcatサービスランチャーを使用するか、install4jでサービスランチャーを作成できます。どちらの場合も、サービスをインストールするために「サービスのインストール」アクションを使用できます。

生成されたサービスには、更新インストーラーが実行中であることを認識し、新しいファイルをインストールする前に自動的にシャットダウンするという利点があります。

ここに画像の説明を入力してください

OracleまたはSQLServerでデータベースを作成します(このためのSQLスクリプトを提供します)

これらのスクリプトを実行するには、「実行可能ファイルまたはバッチファイルの実行」アクションを使用します。

ホスト名など、いくつかの値を設定テーブルに書き込みます。(ユーザーにこれらを確認させることはできますが、ユーザーがそれらをタップする必要はありません。

あらゆる種類のユーザー操作は、構成可能なフォームを使用して行われます。いくつかのテキストフィールドフォームコンポーネントを使用して、設定をクエリできます。

これはコンソールインストーラーでも透過的に機能し、自動生成された応答ファイルを使用すると、GUIインストーラーの1回の実行に基づいて無人モードでのインストールを自動化できます。

ここに画像の説明を入力してください

Tomcatの下に配置される接続プロパティファイル(これを支援するミニJARアプリを提供します)を作成します。

これを行うJARファイルが既にある場合は、[インストーラー]-> [カスタムコードとリソース]で追加し、インストーラーに「スクリプトの実行」アクションを追加して、JARファイルのクラスを使用します。

インストーラー変数に保存されたフォームコンポーネントからのユーザー入力には、次のような呼び出しでアクセスできます。

context.getVariable("greetingOption")

「スクリプトの実行」アクション(またはinstall4jの他のスクリプト)のscriptプロパティ。

実際のWebアプリケーション用に2つのWARファイルがあります。これらは2台のマシンに分割できますが、今のところ、両方がTomcatの下にダンプされると仮定します。

Tomcatディレクトリ構造を配布ツリーに追加するだけで、これらのWARファイルを事前にデプロイできます。それ以外の場合は、「ファイルのコピー」アクションを使用して、WARファイルをどこにでも配置できます。

Tomcatを起動して、WARをデプロイします

これは、「サービスの開始」アクションで実行されます。

于 2011-09-27T08:42:04.543 に答える