Eclipse Maven Tomcatの利用配置
1.事前準備
m 2 eclipseプラグインにはMavenが埋め込まれていますが、個人的には独立したMavenを使う傾向があります.アプリをダウンロードします.http://maven.apache.org/環境変数の設定については、次の方法を参照してください. 1.M 2_を作成しますHOMEは、Mavenのインストール経路として値を設定します.如:%MY_WORKSPACE%\apache-maven-3.5 2.Pathに%M 2_を追加します.HOME%\bin;コマンドラインに入力します.mvn-versionは設定が成功したかどうかを確認します.また、ローカルライブラリフォルダのパス(Win 7は例です.)はデフォルトでは現在のユーザフォルダの下にあります.m 2フォルダは、settings.xmlファイルの中でを通じてより適切なパスを設定することができます.
m 2 eclipseプラグインをインストールするのはとても簡単です.直接にHelp-」Install New Softwareを通してインストールします.パス:http://download.eclipse.org/technology/m2e/releases (プラグインの公式サイト:http://eclipse.org/m2e/)インストールが完了したら、eclipseのWindow-PreferencesでMavenのオプションが見られます.Maven-」Installationsを選んで、【add...】をクリックします.ボタンを押してMavenのインストール経路を追加します.
3.TomcatのMavenプラグインの設置と熱配置
eclipseの中でtomcatサーバーの設定はこれ以上説明しないで、Java EE版は直接Preferences-"Server設定を通すことができて、standard版はtomcatプラグインをインストールする必要があります.http://www.eclipsetotale.com/tomcatPlugin.htmlを選択します次に、tomcat 7を例にとって、tomcatのmavenプラグインをどうやってインストールするかについて説明します.それぞれプラグインを利用してtomcatを埋め込む方法と、独立したtomcatを利用する方法です.
方法1:プラグイン内蔵tomcatにおける熱配置
tomcatのMavenプラグインにはすでにtomcatサーバーが埋め込まれています.直接利用できます.mavenプロジェクトのpom.xmlファイルを修正して、次のような文を追加します.
ソurce
Deploy Path
/src/main/java
WEB-INF/clases
/src/main/resource
WEB-INF/classis
/src/main/webapp
/
Maven Dependencies
WEB-INF/lib
4.面倒なことが続いてきました.(この無駄話は多くて、実際の配置は第5点を見てください.)tomcatで熱配置を実現します.構成にとってはcontextでreloadable属性をtrueとして設定し、工程経路を配置します.以下のコード:
m 2 eclipseプラグインにはMavenが埋め込まれていますが、個人的には独立したMavenを使う傾向があります.アプリをダウンロードします.http://maven.apache.org/環境変数の設定については、次の方法を参照してください. 1.M 2_を作成しますHOMEは、Mavenのインストール経路として値を設定します.如:%MY_WORKSPACE%\apache-maven-3.5 2.Pathに%M 2_を追加します.HOME%\bin;コマンドラインに入力します.mvn-versionは設定が成功したかどうかを確認します.また、ローカルライブラリフォルダのパス(Win 7は例です.)はデフォルトでは現在のユーザフォルダの下にあります.m 2フォルダは、settings.xmlファイルの中で
<localRepository> </localRepository>
2.m 2 eclipseプラグインをインストールするm 2 eclipseプラグインをインストールするのはとても簡単です.直接にHelp-」Install New Softwareを通してインストールします.パス:http://download.eclipse.org/technology/m2e/releases (プラグインの公式サイト:http://eclipse.org/m2e/)インストールが完了したら、eclipseのWindow-PreferencesでMavenのオプションが見られます.Maven-」Installationsを選んで、【add...】をクリックします.ボタンを押してMavenのインストール経路を追加します.
3.TomcatのMavenプラグインの設置と熱配置
eclipseの中でtomcatサーバーの設定はこれ以上説明しないで、Java EE版は直接Preferences-"Server設定を通すことができて、standard版はtomcatプラグインをインストールする必要があります.http://www.eclipsetotale.com/tomcatPlugin.htmlを選択します次に、tomcat 7を例にとって、tomcatのmavenプラグインをどうやってインストールするかについて説明します.それぞれプラグインを利用してtomcatを埋め込む方法と、独立したtomcatを利用する方法です.
方法1:プラグイン内蔵tomcatにおける熱配置
tomcatのMavenプラグインにはすでにtomcatサーバーが埋め込まれています.直接利用できます.mavenプロジェクトのpom.xmlファイルを修正して、次のような文を追加します.
<project ......>
......
<!-- tomcat7 maven -->
<properties>
<tomcat7-maven-plugin-version>2.1</tomcat7-maven-plugin-version>
</properties>
......
<build>
......
<!-- tomcat7 maven -->
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>${tomcat7-maven-plugin-version}</version>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
その後、debugモードでこのプロジェクトをリリースします.pom.xml右キー-、Debug as-、Maven Build...、「Goals」に入力します.tomcat 7:runが動作したら、指定されたtomcat 7にプロジェクトをリリースします.jspなどの内容を修正してみて、再度ページを更新したら、修正内容がページに反映されていることが分かります.この方法は非常に簡便で、eclipseとmavenにtomcatを配置しなくてもいいですが、サーバーにいくつかの配置をするなら、埋め込まれたサーバーはあまり便利ではないかもしれません.ですから、独立したtomcatでどのように熱い配置が行われるかを説明します.方法2:独立tomcatにおける熱配置(2013-8-11更新)は、独立したtomcatにおいてもtomcatのmavenプラグインが必要であるため、「方法1」に基づいて配置を継続しており、プロセスがやや屈折している可能性がある.1.mavenのsettings.xmlにtomcatと管理者の登録口座パスワードを設定します. <server>
<id>tomcat</id>
<username>username</username>
<password>password</password>
</server>
.pom.xmlにtomcatプラグインが配置されている中にサーバーを追加する情報:<project ......>
......
<build>
......
<plugins>
<plugin>
......
<configuration>
<!--settings.xml server id -->
<server>tomcat</server>
</configuration>
</plugin>
......
</plugins>
</build>
</project>
これでeclipseでtomcatを起動し、実行コマンド:tomcat 7:redeploy、プロジェクトをcatに発表することができます.残念ながら、catだけができます.修正するたびに発表します.面倒くさいです.ですから、続けて~3.m 2 eclipseによって設立されたwebプロジェクトのtomcatは認識していませんので、まずプロジェクトに対して一定の変換を行います.プロジェクトの右ボタンを選択します.新しく生成されたWebContintフォルダは直接削除できます.必要ではありません.その後、プロジェクトのPropertiesウィンドウを再度開いて、Deployment Asembleを選択して、次のように構成します.ソurce
Deploy Path
/src/main/java
WEB-INF/clases
/src/main/resource
WEB-INF/classis
/src/main/webapp
/
Maven Dependencies
WEB-INF/lib
4.面倒なことが続いてきました.(この無駄話は多くて、実際の配置は第5点を見てください.)tomcatで熱配置を実現します.構成にとってはcontextでreloadable属性をtrueとして設定し、工程経路を配置します.以下のコード:
<Context reloadable="true" docBase="${MY_PROJECT}\src\main\webapp" />
contextでtomcatに全部で5つのところに書くことができます.1.META-INF/context.xml 2.2%CATALINE_HOME%\conf\Catalina\local host\[appname].xml 3.3%CATALINE_HOME%\conf\Catalina\local host\context.xml.default 4%CATALINE_HOME%\conf\context.xml 5.0%CATALINE_HOME%\conf\server.xmlを試してみましたが、熱配置の設定は2,5の2つだけ有効です.(他の方法もありますが、気づかなかったかもしれません.)ここではserver.xmlに設定することを勧めません.undeployの命令はserver.xmlの配置を除去できず、再配置に失敗します.だから配置%CATALINAだけです.HOME%\conf\Catalina\local host\[appname].xmlですが、tomcatのmavenプラグインはundeployを走るたびにファイルを削除します.deplolyコマンドはxmlファイルを再配置しないので、他の方法でこのファイルを配置しなければなりません.5.maven-antrun-pluginを利用して、antコマンドを利用して熱配置情報のあるxmlファイルをサーバにアップロードする方法を考えたいです.pomファイルの配置は以下の通りです.<project ......>
......
<build>
......
<properties>
......
<maven-antrun-plugin-version>1.7</maven-antrun-plugin-version>
</properties>
<plugins>
......
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>${maven-antrun-plugin-version}</version>
<executions>
<execution>
<!-- package -->
<phase>package</phase>
<configuration>
<tasks>
<!-- ant copy -->
<copy todir= file= xml />
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
6.熱配置情報を記載したxmlファイルはどこにでも置けますが、ファイル名は必ず発行された工事名と同じです.具体的には、<?xml version="1.0" encoding="UTF-8"?>
<Context ...... reloadable="true" docBase="${MY_PROJECT}\src\main\webapp" />
7.最後に実行されます.各リリース前のclean操作とredeploy命令は、package段階の実行をトリガできないと考えられます.最終的なコマンドは、【clean tomcat 7:undeploy tomcat 7:deploy】です.OK、これでやっと独立したtomcatに熱配置が可能になりました.==============================================================================================================================================リソースファイルとjspファイルを修正したら、targetディレクトリに同期しないということです.この問題を解決するために、eclipseのプラグインfileSyncを利用することができます.このプラグインは、あるフォルダのファイル変更後に別の指定されたフォルダに自動的に同期する機能(追加、削除もサポート)を実現します.使い方が簡単なので、多く話しません.ダウンロード先:http://andrei.gmxhome.de/filesync/http://marketplace.eclipse.org/content/filesync また、jarカバンなどを探して行けばいいです.http://mvnrepository.com/リソースが豊富で、pomファイルの構成説明を提供します.