users@jersey.java.net

Re: [Jersey] Mavenising Jersey/Jersey-Spring

From: Paul Sandoz <Paul.Sandoz_at_Sun.COM>
Date: Mon, 19 May 2008 14:12:41 +0200

Martin Grotzke wrote:
> On Mon, 2008-05-19 at 10:43 +0200, Paul Sandoz wrote:
>>>> Next steps:
>>>>
>>>> 1) Work out how to "mvn deploy" snapshots to the java.net m2 repo.
>>>>
>>>> 2) Modify Jersey Hudson task to use maven, create Jersey-Spring Hudson
>>>> task using maven. Thus artifacts will be continuously pushed to the
>>>> repo.
>>>>
>>>> 3) Componentize Jersey
>>>> Start with the examples.
>>> Sounds good! Can I help with s.th.?
>>>
>> If you have some spare time, how about looking at what is involved with
>> converting the examples?
> Ok. The first question is IMO about project/module structure.
>
> I could think of s.th. like this:
> trunk
> \
> - contribs
> - examples (moved from jersey/examples)
> \
> - Bookmark
> - Bookstore
> - ...
> - jersey
> - repo
> - www
>
> So that each example is a separate maven module depending on jersey and
> what else it needs.
>

+1


> What do you think, and what do other maven users think?
>
> The next question is, if the current project structure of an example
> shall be kept or if this shall be mavenized (change to a structure that
> conforms the maven conventions). The easiest would probably be to choose
> door one, but IMHO for the longer run it would be better (produce less
> questions) to mavenize each example (change structure).
>
> What do you think?
>

+1 to conforming to the maven conventions.

To be consistent with the example package name we should probably rename
"examples" to "samples".


> I can imagine to start with one example and to create some
> how-to-mavenize-an-example howto, so that this work can be done by
> several people.
>
> Ok?
>

Yes.

Actually thinking about it, we should probably put everything underneath
the name "jersey":

trunk/
   jersey/ # copying the convention used by Grizzly
     pom.xml
     contribs/
       spring/
     samples/
     modules/
       jersey/
               # and jersey will be modularized later e.g.
               # jersey-runtime/
               # jersey-jaxb/
               # jersey-json/
               # jersey-servlet/

as it means we can easily build everything, meaningfully branch/tag
everything, create bundles, and still retain a zip distribution for
non-maven users.

Paul.

-- 
| ? + ? = To question
----------------\
    Paul Sandoz
         x38109
+33-4-76188109