2016-05-10 14 views
0

私は動的Webアプリケーションを作成する必要があります。そして、私はそれから耳のファイルを作成する必要があります。私はまた、mavenを使用したいと思います。何が日食でこれを行うための最良の方法は何ですか?耳のプロジェクトの動的WebアプリケーションとMaven

"maven-archetype-j2ee-simple"アーキタイプ(Create complete EAR Project with Maven and Eclipse Helios)が見つかりました。誰かが私がどのフォルダ(コントローラー、テスト、JSPサイト、Javaクラス)に入れなければならないか、どのようにイヤーファイルを作成するか教えてください。

私はMavenを実行する場合、私は

Child module */site of */pom.xml does not exist 

エラーが出る私はこのエラーを取り除くために、ルートのpom.xmlに<module>site</module>を削除する必要がありますが、私もこの1つは何をしているか知りません。そしてなぜこのアーキタイプに誤りがあるのですか?

こんにちは!

答えて

1

このアーキタイプにはバグがあるようです(ejbモジュールの外観ではかなり古いです)。親モジュールからサイトモジュールを削除できますが、これはmavenサイトと思われます。

ただし、このアーキタイプを使用しないことをお勧めします。

maven-archetype-webappからwarプロジェクトを作成し、独自の親と独自のearプロジェクトを作成してwarをパッケージ化します。

親は次のようになります。

<modules> 
     <module>poc-war</module> 
     <module>poc-ear</module> 
</modules> 

耳のポンポンが戦争のプロジェクトに依存関係を持っていると耳を生成するために、Mavenの耳のプラグインを使用します。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
     <modelVersion>4.0.0</modelVersion> 

     <parent> 
       <groupId>net.isban</groupId> 
       <artifactId>poc</artifactId> 
       <version>1.0-SNAPSHOT</version> 
     </parent> 

     <artifactId>poc-ear</artifactId> 
     <packaging>ear</packaging> 

     <description>EAR deployment </description> 
     <name>FMIS EAR</name> 

     <dependencies> 
       <dependency> 
         <groupId>net.isban</groupId> 
         <artifactId>poc-war</artifactId> 
         <version>${project.version}</version> 
         <type>war</type> 
       </dependency> 
     </dependencies> 

     <build> 
       <finalName>${project.artifactId}-${project.version}</finalName> 
       <plugins> 
         <plugin> 
           <artifactId>maven-ear-plugin</artifactId> 
           <version>2.10.1</version> 
           <configuration> 
             <skinnyWars>false</skinnyWars> 
             <filtering>true</filtering> 
             <modules> 
               <webModule> 
                 <groupId>net.isban</groupId> 
                 <artifactId>poc-war</artifactId> 
                 <contextRoot>/poc</contextRoot> 
               </webModule> 
             </modules> 
           </configuration> 
         </plugin> 
       </plugins> 
     </build> 

</project> 
+0

ねえ、私が作成しました2つの簡単なプロジェクト。 1つの包装ポンと他の耳。 1 maven-archtype-webappプロジェクト。次に、耳プロジェクトと戦争プロジェクトを親プロジェクトにコピーし、pom.xmlを修正します。それはうまく動作します。しかし、コピーした後、Webアプリケーションは、Library、Java Resources Javascript Resurcesのようなフォルダを持っていません。だから私は日食でこれを行うためのより良い方法があると思いますか? – ReasyEasyPeasy

+0

skinnyWarsはすべてのライブラリがどこに行くかを決定します。この場合は、すべてのジブjarsがwarファイルに含まれるようにtrueに設定されます。あなたがfalseに設定すると、彼らは耳に入るでしょう。個人的に私は戦争で彼らが好きです。 –

関連する問題