Apache Maven-Webアプリケーション

Mavenが何であるかを既に知っていて、単純なモジュラーWebアプリケーションを構築したい場合(そうでない場合は、Maven に関するトピック基本事項を読むことができます)。 このトピックのトピックは、pom.xmlを構成し、プロジェクトに別のモジュールを追加し、プラグインを接続し、アプリケーションをApache Tomcatサーバーにデプロイする方法です。



イントロ



それでは、例として単純なWebアプリケーションを取り上げましょう。 モジュールで構成されています:モデル(エンティティクラスとDaoクラス)、サービス(サービス)、Web(サーブレット)。 プロジェクトと各モジュールには、独自のpom.xmlファイルがあります。 EclipseはIDEとして機能しますが、NetBeans、IDEAにもすべてが当てはまります。 TomcatサーバーであるmavenプラグインがすでにIDEに追加されていることを前提としています。

私たちの手順:



Mavenプロジェクトの作成



IDEでMavenプロジェクトを作成すると、IDE自体がアイテムの設定を要求します。

原型の選択をスキップ、グループID = com.mycompany、アーティファクトID = myprojectを選択します。

モジュールを接続します:

<groupId>com.mycompany</groupId> <artifactId>myproject</artifactId> <version>0.0.1-SNAPSHOT</version> <modules> <module>model</module> <module>service</module> <module>web-servlet</module> </modules>
      
      





デフォルトでは、mavenはJREバージョン1.4に接続します。1.6が必要です。プラグインをプラグインします。

 <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.5.1</version> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> </plugins> </build>
      
      





モジュールは他のライブラリに依存している場合があります。モジュールのpom.xmlではなく、dependencyManagmentでプロジェクトの依存関係のバージョンを示すことをお勧めします。

 <dependencyManagement> <dependencies> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1-b01</version> </dependency> </dependencies> </dependencyManagement>
      
      





Mavenモジュールの作成



IDEでプロジェクトを右クリックし、Mavenモジュールを作成します。 このモジュールのpom.xmlで、プロジェクトを指定します。

 <packaging>war</packaging> <parent> <groupId>com.mycompany</groupId> <artifactId>myproject</artifactId> <version>0.0.1-SNAPSHOT</version> </parent>
      
      





依存関係は、モジュール(この場合はサービス)を示すこともできます。 ライブラリのバージョンがプロジェクトのpom.xmlで指定されている場合、繰り返しますが、モジュールのpom.xmlでバージョンを指定することはできません(より適切です)。

 <dependencies> <dependency> <groupId>com.mycompany</groupId> <artifactId>service</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> </dependency>
      
      





また、 Maven-> build



IDEのコマンドでサーバーにデプロイするアプリケーションのプラグインも必要です。 Tomcat 6および7では、URL文字列が異なることに注意してください。

 <build> <finalName>project</finalName> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>tomcat-maven-plugin</artifactId> <version>1.1</version> <configuration> <url>http://localhost:8080/manager/html</url><!--  Tomcat 7 !--> <!--<url>http://localhost:8080/manager</url>!--><!--  Tomcat 6 !--> <server>tomcatServer</server> <path>/project</path> </configuration> </plugin> </plugins> </build>
      
      





Maven、Tomcatの構成



Mavenプラグインは、ログイン:Tomcatマネージャーに接続するためのTomcatパスワードを知っている必要があります。 ホームディレクトリ/.m2/settings.xmlでファイルを開き(作成しない場合)、 IDE-> Maven-> User Settings-> Update Settings



。 Settings.xml自体:

 <settings> <servers> <server> <id>tomcatServer</id> <username>admin</username> <password>password</password> </server> </servers> </settings>
      
      





Tomcatディレクトリconfig / tomcat-users.xmlで、同じマネージャーに権限を追加します。

 <tomcat-users> <role rolename="manager"/> <role rolename="manager-gui"/> <role rolename="admin"/> <user username="admin" password="password" roles="admin,manager,manager-gui"/> </tomcat-users>
      
      





IDEは、ワークスペースまたはTomcatディレクトリからの設定でTomcatを起動できることに注意してください。 2番目のオプションを選択したため、IDEでサーバー設定- Server Location-> Use Tomcat installation



を設定しました。



サーバーにデプロイする



IDEからTomcatサーバーを起動します。 モジュールに-> Run As-> Maven build



ライフサイクルを-> Run As-> Maven build



ます: -> Run As-> Maven build



。 Goals行にtomcat:redeployを追加して実行します。 そのため、モジュールはlocalhost:8080 / project /でスタックしています。 みんな踊って歌っています。 Eclipseでは、 Shift+Atl+X, M



別の展開を行うのが非常に便利ですShift+Atl+X, M







便利なリンク:

maven.apache.org/guides

tomcat-maven-plugin



All Articles