[seam-dev] module project anatomy

Jordan Ganoff jganoff at gmail.com
Sat Apr 10 23:29:39 EDT 2010


Dan,

While restructuring the JMS module I ran into a maven assembly issue.  I
couldn't get a dependent library jar into the assembly because it wasn't
depended on from my parent pom.  The seam-jms-impl depends on
weld-extensions but there's no reason to include the dependency generally in
seam-jms-parent as no other modules need it.

Here's an excerpt from assembly.xml:

   <dependencySets>
      <dependencySet>
         <outputDirectory>seam-jms/lib</outputDirectory>
         <useProjectArtifact>false</useProjectArtifact>
         <includes>
            <include>org.jboss.weld:weld-extensions</include>
         </includes>
      </dependencySet>
   </dependencySets>

Since the assembly is defined in seam-jms-parent I get this warning when
building the assembly:

[WARNING] The following patterns were never triggered in this artifact
inclusion filter:
o  'org.jboss.weld:weld-extensions'

After doing some research[1] I found that for more complex assemblies a
separate project solely responsible for building the assembly is used where
special dependencies such as this can be defined.  I'm no Maven expert so I
wanted to bring this up and see what you guys think about it.  I could just
say the hell with it and just include this dependency in
seam-jms-parent since this is a small multi-module project...

What do you think?

[1]:
http://maven.apache.org/plugins/maven-assembly-plugin/faq.html#module-binaries
Describes how using a separate assembly project can relieve the issues
with
assembling multi-module projects.  See topic "The Assembly Plugin is saying
it cannot find files for the module binaries included by my assembly
descriptor. What gives?".

-- 
Jordan

On Fri, Apr 9, 2010 at 11:07 AM, Pete Muir <pmuir at redhat.com> wrote:

> These are all excellent guides - good work Dan and co!
>
> On 7 Apr 2010, at 04:34, Dan Allen wrote:
>
> > On Tue, Apr 6, 2010 at 7:50 PM, Dan Allen <dan.j.allen at gmail.com> wrote:
> > As promised, I have put together a page detailing the anatomy of a module
> project in Seam 3. Please consider this a draft document and feel free to
> provide feedback if there's something that doesn't seem agreeable to you.
> Also, if you think there is an important detail missing, or an inconsistency
> appears over time, please let us know.
> >
> > http://seamframework.org/Seam3/ModuleAnatomy
> >
> > Keep in mind that there are many different ways we could structure the
> modules. What is important is that the structure is reasonable and that it
> is consistent across modules. Contributors should be able to comfortable
> move between modules and be familiar with how the code is setup.
> >
> > As promised, I also completed the module release procedure document. This
> describe everything from picking a version to writing the blog entry
> announcing your release. We'll see how well it holds up when we put it to
> the test on the next release. So please, if there is anything I overlooked,
> or you have a better way of explaining it, please let me know.
> >
> > http://seamframework.org/Seam3/ModuleReleaseProcedure
> >
> > Now, there is a handbook for Module Leads:
> >
> > http://seamframework.org/Seam3/ModuleHandbook
> >
> > :)
> >
> > If there is something else you want to know, just let us know ;)
> >
> > -Dan
> >
> > --
> > Dan Allen
> > Senior Software Engineer, Red Hat | Author of Seam in Action
> > Registered Linux User #231597
> >
> > http://mojavelinux.com
> > http://mojavelinux.com/seaminaction
> > http://www.google.com/profiles/dan.j.allen
> > _______________________________________________
> > seam-dev mailing list
> > seam-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/seam-dev
>
>
> _______________________________________________
> seam-dev mailing list
> seam-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/seam-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/seam-dev/attachments/20100410/bd5ef385/attachment.html 


More information about the seam-dev mailing list