2013-09-22 21 views
6

私は、Spring MVC、Hibernate、MySQL、Maven、Tomcatを使用して小さなMVCプロジェクトを開発しました。アプリケーションを(ローカルで)スムーズに実行してテストすることができます。Spring MVCプロジェクトのデプロイ

このプロジェクトは、Tomcatだけがインストールされている(オンライン)サーバーに公開/展開する必要があります。オンラインでプロジェクトを公開/配布するにはどうすればよいですか?私がすべき特別なビルドはありますか?どんなファイルをどこにアップロードすればいいですか?

答えて

6

です。開発オプションにはいくつかの種類があります。

localhostでの開発EAR(Exploded ARchive)タイプのプロジェクトが通常使用されます(serveryで簡単にホットデプロイできるため)。しかし、制作WAR(Web ARchive)が使用されます(基本的には同じEARアーカイブですが、ZIPアルゴリズムを使用して圧縮されます)。

リモートTomcatサーバーにプロジェクトを展開する場合は、プロジェクトをWARアーカイブとして作成し、Tomcatのwebappsディレクトリにアップロードします。 Tomcatを再起動する必要があるかもしれません。しかし、手動で展開する方法です。

より良いオプションは、あなたのプロジェクトをコンパイルすることができ、自動ビルドツール(Mavenなど)を使用して実行ユニットテスト、(ローカルまたはリモート)Webサーバー上に展開することであるなど

この1つはどのように良い例です通常、さまざまな理由でエラーを取得し、コマンドを展開達人で)

0

mvnクリーンインストールを実行すると、Webモジュールのターゲットディレクトリに.warファイルが作成されます。 これをコピーしてtomcat_home/webappsディレクトリに貼り付け、tomcatを再起動します。それでおしまい。設定されたポート(例:http://localhost:8080/<your webapp war name>)にアクセスできます。あなたの戦争の名前はmyapp.warだと言うと、tomcatはwebappsのmyappフォルダにそれを抽出していました。 あなたのURLはhttp://localhost:8080/myapp

+0

なぜ 'MVNきれいなパッケージをしません''インストール 'の代わりに? – Bart

+0

パッケージフェーズがインストールに含まれているので、これもやっていいと言いましたが、どちらもうまくいくでしょう。 – vigneshre

+0

'install'はアプリケーションをパッケージ化するよりも、望ましい方法ではありません。このWebアプリケーションを他のプロジェクトに依存関係として含めることはできません。 – Bart

0

; http://www.mkyong.com/maven/how-to-deploy-maven-based-war-file-to-tomcat/

幸運:Mavenののtomcat-mavenの-プラグインを使用してTomcatサーバ上のプロジェクトを展開します。 Unix/Linuxシステムで作業する場合、コンソールで "rsync"メソッドを使うことをお勧めします。 (あなたは簡単に管理する独自のシェルスクリプトを書くことができます)。それは問題なく展開するだけでなく、再展開時に時間を得るのにも役立ちます(変更されたファイルや新しいファイルのアップロードのみ)。 maven deploy/redeployはプロジェクトをjar/warにバンドルとしてアップロードするためです。しかし、 "rysnc"メソッドはプロジェクトファイルを1つずつアップロードします。

これを使用する前に、2つの条件を確認する必要があります。

1 - あなたのプロジェクトがターゲットフォルダ内に内蔵されている(春ツール・スイート)

2 - あなたは、SSH経由でのTomcatへのアクセス権を持っている

コード例:(V_:カスタマイズ可能な変数であるプレフィックス( ))

rsync -avz v_your_project_in_target [email protected]_ip:v_tomcat_name/webapps/v_project_name 

(第二の共有)

関連する問題