Note that there are some explanatory texts on larger screens.

plurals
  1. POJava 6 Enterprise project (WAR) in Maven3 (Modules)
    primarykey
    data
    text
    <p>I have Java 6 Enterprise project (WAR) in Maven3 created base on</p> <ul> <li><a href="http://www.sonatype.com/books/mvnex-book/reference/multimodule-web-spring.html" rel="nofollow">http://www.sonatype.com/books/mvnex-book/reference/multimodule-web-spring.html</a></li> <li><a href="http://www.znetdevelopment.com/blogs/2009/02/18/j2ee-project-structures" rel="nofollow">http://www.znetdevelopment.com/blogs/2009/02/18/j2ee-project-structures</a></li> </ul> <p>with this structure:</p> <ul> <li>EnterpriseProject (Super POM) <ul> <li>ep-model (produces JAR)</li> <li>ep-persist (produces JAR)</li> <li>ep-service (produces JAR)</li> <li>ep-ui (produces JAR)</li> <li>ep-webapp (puts it all together and produces WAR)</li> </ul></li> </ul> <p>with dependencies (->):</p> <pre><code>ep-webapp -&gt; ep-ui -&gt; ep-model -&gt; ep-service -&gt; ep-model -&gt; ep-persist -&gt; ep-model </code></pre> <p>When I run Enterprise Project goal "package", war is created in EnterpriseProject\ep-webapp\target\ and this war contains all needed libraries: ep-model, ep-persist, ep-service, ep-ui. </p> <p>Q1) Is this solutions right?</p> <p>Q2) How should I add additional modules (how set dependencies)?</p> <ul> <li>ep-common (produces JAR)</li> <li>ep-ws (webservices; produces JAR)</li> </ul> <p>Should I only add ep-common dependency into ep-weapp pom (just for adding ep-common lib to war) or everywhere where I use ep-common?</p> <pre><code>ep-webapp -&gt; ep-ui -&gt; ep-model -&gt; ep-service -&gt; ep-model -&gt; ep-persist -&gt; ep-model -&gt; ep-common -&gt; ep-ws </code></pre> <p>Thanks a lot for tips</p> <p>My present solution: EnterpriseProject Super pom:</p> <pre><code>&lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt; &lt;groupId&gt;com.ep&lt;/groupId&gt; &lt;artifactId&gt;enterprise-project&lt;/artifactId&gt; &lt;packaging&gt;pom&lt;/packaging&gt; &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt; &lt;name&gt;Enterprise Project&lt;/name&gt; &lt;modules&gt; &lt;module&gt;../ep-model&lt;/module&gt; &lt;module&gt;../ep-persist&lt;/module&gt; &lt;module&gt;../ep-service&lt;/module&gt; &lt;module&gt;../ep-ui&lt;/module&gt; &lt;module&gt;../ep-webapp&lt;/module&gt; &lt;/modules&gt; </code></pre> <p>ep-webapp pom:</p> <pre><code>&lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt; &lt;parent&gt; &lt;groupId&gt;com.ep&lt;/groupId&gt; &lt;artifactId&gt;enterprise-project&lt;/artifactId&gt; &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt; &lt;relativePath&gt;../ep/pom.xml&lt;/relativePath&gt; &lt;/parent&gt; &lt;artifactId&gt;ep-webapp&lt;/artifactId&gt; &lt;packaging&gt;war&lt;/packaging&gt; &lt;name&gt;webapp&lt;/name&gt; &lt;dependencies&gt; &lt;dependency&gt; &lt;groupId&gt;${project.groupId}&lt;/groupId&gt; &lt;artifactId&gt;ep-ui&lt;/artifactId&gt; &lt;version&gt;${project.version}&lt;/version&gt; &lt;/dependency&gt; &lt;/dependencies&gt; </code></pre> <p>ep-ui pom:</p> <pre><code>&lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt; &lt;parent&gt; &lt;groupId&gt;com.ep&lt;/groupId&gt; &lt;artifactId&gt;enterprise-project&lt;/artifactId&gt; &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt; &lt;relativePath&gt;../ep/pom.xml&lt;/relativePath&gt; &lt;/parent&gt; &lt;artifactId&gt;ep-ui&lt;/artifactId&gt; &lt;packaging&gt;jar&lt;/packaging&gt; &lt;name&gt;ui&lt;/name&gt; &lt;dependencies&gt; &lt;dependency&gt; &lt;groupId&gt;${project.groupId}&lt;/groupId&gt; &lt;artifactId&gt;ep-model&lt;/artifactId&gt; &lt;version&gt;${project.version}&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;${project.groupId}&lt;/groupId&gt; &lt;artifactId&gt;ep-service&lt;/artifactId&gt; &lt;version&gt;${project.version}&lt;/version&gt; &lt;/dependency&gt; &lt;/dependencies&gt; </code></pre> <p>ep-model pom:</p> <pre><code>&lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt; &lt;parent&gt; &lt;groupId&gt;com.ep&lt;/groupId&gt; &lt;artifactId&gt;enterprise-project&lt;/artifactId&gt; &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt; &lt;relativePath&gt;../ep/pom.xml&lt;/relativePath&gt; &lt;/parent&gt; &lt;artifactId&gt;ep-model&lt;/artifactId&gt; &lt;packaging&gt;jar&lt;/packaging&gt; &lt;name&gt;model&lt;/name&gt; </code></pre> <p>ep-service pom:</p> <pre><code>&lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt; &lt;parent&gt; &lt;groupId&gt;com.ep&lt;/groupId&gt; &lt;artifactId&gt;enterprise-project&lt;/artifactId&gt; &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt; &lt;relativePath&gt;../ep/pom.xml&lt;/relativePath&gt; &lt;/parent&gt; &lt;artifactId&gt;ep-service&lt;/artifactId&gt; &lt;packaging&gt;jar&lt;/packaging&gt; &lt;name&gt;service&lt;/name&gt; &lt;dependencies&gt; &lt;dependency&gt; &lt;groupId&gt;${project.groupId}&lt;/groupId&gt; &lt;artifactId&gt;ep-model&lt;/artifactId&gt; &lt;version&gt;${project.version}&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;${project.groupId}&lt;/groupId&gt; &lt;artifactId&gt;ep-persist&lt;/artifactId&gt; &lt;version&gt;${project.version}&lt;/version&gt; &lt;/dependency&gt; &lt;/dependencies&gt; </code></pre> <p>ep-persist pom:</p> <pre><code>&lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt; &lt;parent&gt; &lt;groupId&gt;com.ep&lt;/groupId&gt; &lt;artifactId&gt;enterprise-project&lt;/artifactId&gt; &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt; &lt;relativePath&gt;../ep/pom.xml&lt;/relativePath&gt; &lt;/parent&gt; &lt;artifactId&gt;ep-persist&lt;/artifactId&gt; &lt;packaging&gt;jar&lt;/packaging&gt; &lt;name&gt;persist&lt;/name&gt; &lt;dependencies&gt; &lt;dependency&gt; &lt;groupId&gt;${project.groupId}&lt;/groupId&gt; &lt;artifactId&gt;ep-model&lt;/artifactId&gt; &lt;version&gt;${project.version}&lt;/version&gt; &lt;/dependency&gt; &lt;/dependencies&gt; </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload