要約:ビルドとデプロイメントの設定に時間を費やしたいと思います。これは少し前の作業ですが、セットアップ後に必要に応じて成長できる一般的なソリューションです。
ステップ1は、Antスクリプトを使用して実行できます。最初にAntをインストールし、短いbuild.xmlを作成してthis exampleのようなものを追加します。 Antが正しくインストールされていれば、build.xmlがあるディレクトリに移動して 'ant'を実行するだけです。
手順2〜6では、ターゲットをクリーンアップしたり、サービスなどを管理したりする必要があるため、MSIインストーラまたは実行可能ファイルを生成します。 MSIツールの私の最初の選択はAdvanced Installerです。 the list of featuresの下に、フリーウェアバージョンで、インストールとアンインストール時にWindowsサービスを制御(開始、停止、インストール、アンインストール)できることが表示されます。
(サイドノート:私たちは、それが継続的に改善しています4年間の高度なインストーラエンタープライズを使用しました、と非常に高品質の製品は、あなたは失望することはできません。)。
あなたは、AntのスルーMSIの作成を制御することができます同じように。ここで私は維持する製品の一つをコンパイルして展開するカップルのマクロを呼び出す私のbuild.xmlからスニップです:
<target name="myproduct-installer" depends="unzip-myproductdocs">
<build-ai-installer product.name="MyProduct" installer.path="setup/installs/MyProduct" project.file="MyProduct.aip" />
</target>
<target name="release-myproduct-installer">
<release-AI-installer product.name="MyProduct" installer.path="setup/installs/MyProduct" product.path="${some-predefined-target}" />
</target>
ここでは、上記で使用したマクロです:
<macrodef name="build-ai-installer">
<attribute name="product.name" />
<attribute name="installer.path" />
<attribute name="project.file" />
<sequential>
<echo message="Making installer at @{installer.path}" />
<mkdir dir="@{installer.path}/newInstall" />
<exec dir="@{installer.path}" executable="${env.ADVANCEDINSTALLER}" failonerror="true">
<arg line="/edit @{project.file} /SetVersion ${product.version}" />
</exec>
<exec dir="@{installer.path}" executable="${env.ADVANCEDINSTALLER}" failonerror="true">
<arg line="/build @{project.file}" />
</exec>
</sequential>
</macrodef>
<macrodef name="release-AI-installer">
<attribute name="product.name" />
<attribute name="installer.path" />
<attribute name="product.path" />
<sequential>
<copy todir="@{product.path}">
<fileset dir="@{installer.path}/newInstall" />
</copy>
</sequential>
</macrodef>
これらのマクロは、Windowsを使用しますenv.ADVANCEDINSTALLERという環境変数。簡単なビルド設定では、Antプロパティを設定し、 'env'をドロップします。接頭辞:
<property name="ADVANCEDINSTALLER" value="path-to-AdvancedInstaller.com" />
このレベルの自動化は、配当が稼動するとすぐに配当を支払う。しかし、あなたが必要以上に(私は驚くことはありません)、this answer助けるかもしれない場合。
このANT build.xml http://stackoverflow.com/a/18460429/185565の回答を参照してください。開発時にプロジェクトフォルダからwebappを直接使用する方法を示します。 .jsp、.js、.cssがすぐに変わります。後でどこかに展開される戦争を構築する。展開では、ant filecopyまたはssh/ftpを使用して.warをtomcat/webapps/folderにコピーできます。 – Whome