忍者ブログ

「Maven2でEARプロジェクト」の詳細記事: Javaってまだいけますか

Javaってまだいけますか

いっぱいいっぱいで無理なので学んだ事をいちいちメモっていくブログです。

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

Navigation

Maven2でEARプロジェクト

以下の構成でEARプロジェクトを作成する際のpom.xmlの記述方法のメモ。

- Sample (POMプロジェクト)
- Sample-ear (EARプロジェクト)
- Sample-war (WARプロジェクト)

・Sample/pom.xmlの記述
<?xml version="1.0" encoding="UTF-8"?>
<project>
 
<modelVersion>4.0.0</modelVersion>
 
<groupId>・・・</groupId>
 
<artifactId>Sample</artifactId>
 
<packaging>pom</packaging>
 
<version>1.0</version>
 
<name>Sample</name>
 
<url>http://maven.apache.org</url>
 
<modules>
   
<module>../Sample-war</module>
   
<module>../Sample-ear</module>
 
</modules>
</project>

modulesで子プロジェクトを相対パスで指定します。

・Sample-ear/pom.xmlの記述

<?xml version="1.0" encoding="UTF-8"?>
<project>
 
<parent>
   
<artifactId>Sample-ear</artifactId>
   
<groupId>・・・</groupId>
   
<version>1.0</version>
   
<relativePath>../Sample/pom.xml</relativePath>
 
</parent>
 
<modelVersion>4.0.0</modelVersion>
 
<groupId>・・・</groupId>
 
<artifactId>Sample-ear</artifactId>
 
<packaging>ear</packaging>
 
<name>Sample-ear Project</name>
 
<version>1.0</version>
 
<url>http://maven.apache.org</url>
 
 
<dependencies>
   
<dependency>
     
<groupId>・・・</groupId>
     
<artifactId>Sample-war</artifactId>
     
<version>1.0</version>
     
<type>war</type>
   
</dependency>
 
</dependencies>
 
 
<build>
   
<finalName>Sample</finalName>
   
<plugins>
     
<plugin>
       
<artifactId>maven-ear-plugin</artifactId>
       
<configuration>
         
<modules>
           
<webModule>
             
<groupId>・・・</groupId>
             
<artifactId>Sample-war</artifactId>
             
<contextRoot>/Sample</contextRoot>
             
<bundleFileName>Sample.war</bundleFileName>
           
</webModule>
         
</modules>
       
</configuration>
     
</plugin>
   
</plugins>
 
</build>
</project>

relativePathで親プロジェクトを指定するのと、webModuleでwarのプロジェクトを参照するのがポイント。
また、META-INFに含めたいapplication.xmlなどは以下のフォルダに置いておくとmvn packageのときに含めてくれます。

Sample-ear/src/main/applicatioin/META-INF/


・Sample-war/pom.xmlの記述

<?xml version="1.0" encoding="UTF-8"?>
<project>
 
<parent>
   
<artifactId>Sample</artifactId>
   
<groupId>・・・</groupId>
   
<version>1.0</version>
   
<relativePath>../Sample/pom.xml</relativePath>
 
</parent>
 
<modelVersion>4.0.0</modelVersion>
 
<groupId>・・・</groupId>
 
<artifactId>Sample-war</artifactId>
 
<packaging>war</packaging>
 
<name>Sample WAR Project</name>
 
<version>1.0</version>
 
<url>http://maven.apache.org</url>
 
 
<build>
   
<sourceDirectory>src/main/java</sourceDirectory>
   
<testSourceDirectory>src/test/java</testSourceDirectory>
   
<finalName>Sample-war</finalName>
   
<plugins>
     
<plugin>
       
<artifactId>maven-compiler-plugin</artifactId>
       
<configuration>
         
<encoding>MS932</encoding>
       
</configuration>
     
</plugin>
     
<plugin>
       
<artifactId>maven-war-plugin</artifactId>
       
<configuration>
         
<warSourceExcludes></warSourceExcludes>
         
<webXml>src/main/webapp/WEB-INF/web_for_release.xml</webXml>
       
</configuration>
     
</plugin>
   
</plugins>
 
</build>
 
 
<dependencies>
   
<dependency>
    ・・・
   
</dependency>
 
</dependencies>
</project>

同じくrelativePathで親プロジェクトを指定するのがポイント。
webXmlでリリース用のweb.xmlを指定しておくと、package時に差し替えてくれるので、開発用とリリース用で分けられて便利です。

参考にしたサイト
PR

Navigation

「Maven2でEARプロジェクト」にトラックバックする

「Maven2でEARプロジェクト」へのトラックバック

「Maven2でEARプロジェクト」へのコメント

「Maven2でEARプロジェクト」にコメントする

コメント作成

Navigation

Copyright ©  Javaってまだいけますか  All Rights Reserved.
  • 忍者ブログ
  • [PR]

menu

ブログ内検索

カテゴリー

カウンター

忍者アド

リンク

最新CM

[07/17 セバ]
[12/27 NONAME]

最新記事

(10/15)
(10/01)
(08/12)
(08/12)
(08/11)

プロフィール

HN:
takacy.k
年齢:
44
性別:
男性
誕生日:
1979/08/13
趣味:
自己紹介:
個人的なメモですので、投稿内容について真偽を保証するものではありません。また、当ブログの内容をご利用になったことによる(以下略)

最新TB

RSS

アーカイブ

アクセス解析