web-dev-qa-db-ja.com

EclipseはWTPを使用してWebアプリケーションをどこにデプロイしますか?

Webアプリケーション(WARファイル)があります。 WTPツールを使用してEclipse 3.5を介してデプロイすると、Eclipse内からTomcatサーバーを起動して、アプリケーションのすべてのページを表示できます。しかし、私はWARファイルをTomcatホームディレクトリのwebappsフォルダー内に表示していません(または、その展開形式です)。 Tomcatはwebappsフォルダーの下のすべてのWebアプリケーションを読み取るという印象を受けました。この場合、Tomcatは私のアプリケーションをどのように読み取りますか?アプリケーションサーバーとしてTomcat 5.5.17を使用しています。

30
Thunderhashy

EclipseがTomcatに提供したcontext.xmlですべて定義されています。この動作を構成する場合は、サーバービューでTomcatインスタンスをダブルクリックし、サーバーの場所セクションを確認します。最初に希望/期待どおりの結果を得るには、Tomcatインストールを使用を選択し、必要に応じてDeploy pathも指定する必要があります。

19
BalusC

最近、アプリケーションの起動に関する問題のトラブルシューティングを行うために、このトピックの詳細を把握する必要があるので、ここで注意します。

アプリケーションはどこにデプロイされますか?

サーバー構成によって決定されます。サーバービューでサーバーをダブルクリックして、サーバーの「概要」を確認します。 [サーバーの場所]セクションには、デフォルト値が設定されています。

  • サーバーパス:.metadata/.plugins/org.Eclipse.wst.server.core/tmp0
  • 展開パス:wtpwebapps

また、アプリケーション「モジュール」は、アプリケーションパス、ドキュメントベース、およびモジュール名を指定するサーバー構成の「モジュール」タブで定義されます。たとえば、プロジェクトmyappをパス/MyAppにデプロイします。

したがって、ワークスペースが/home/me/workspace/myappの場合、アプリケーションデプロイメントディレクトリへのパスは次のようになります。

/home/me/workspace/myapp/.metadata/.plugins/org.Eclipse.wst.server.core/tmp0/wtpwebapps/myapp. 

どのアプリケーションファイルがデプロイされていますか?

デプロイメントの内容は、プロジェクトプロパティの「デプロイメントアセンブリ」によって決定されます。アセンブリの各エントリは、どのファイルがどのパスに展開されるかを定義します。例:

  • /src/main/Java -> WEB-INF/classes
  • /src/main/resources -> WEB-INF/classes
  • /src/main/webapp -> /
  • Maven Dependencies -> WEB-INF/lib

したがって、ソースツリーにファイルsrc/main/webapp/WEB-INF/web.xmlがある場合、次の場所に展開されます。

/home/me/workspace/myapp/.metadata/.plugins/org.Eclipse.wst.server.core/tmp0/wtpwebapps/myapp/WEB-INF/web.xml
48
hshib