Another vote for maven.

Here's an interesting thread on a project that recently switched to maven's 
maven-release-plugin.  It demonstrates how when you start using more of maven's features, 
doing a release largely turns into a "one click" operation.

http://goo.gl/DJBQY


On 2011-04-20 12:34, VANKEISBELCK Remi wrote:
Maven :)

Really : create jar modules for your classes (action beans, interceptors, etc), 
and war modules for your JSPs, tag files etc. Then, in your final app, just 
depend on them.

I can't explain this in a few lines on the Stripes ML, but I think that's what you need. Look at 
the maven docs for "(transitive) dependency management" and "war plugin 
overlay".

HTH

Remi

2011/4/20 George Clark <gc1...@gmail.com <mailto:gc1...@gmail.com>>


    I understand this conversation has been going on for a while, and I'm glad 
to see it spilling over here from the LinkedIn Group, (and I'd love for it to 
keep going). However, I started this thread with a much more simple question 
than what this has turned into.

    So, just to reiterate: Given that Stripes doesn't /currently/ have a 
fancy-schmancy plugin mechanism like Grails- and maybe doesn't need one. What 
strategies do you use in your personal projects to maximize re-usability?

    A lot of my little projects are Google AppEngine centric, nothing professional, but I 
build little billboard type sites for friends businesses, blog type sites for fun, and 
maybe even a storefront thing for my lousy sister-in-law's "creations".

    So here's an example:
    To make my life easier I allow the site owners to upload their own images, 
and content. Therefore, I have a view that displays a form. An 
ImageUploadAction that handles multi-part uploads, a DAO layer that persists 
the images to google's datastore, then some views and actions to allow 
accessing, renaming, deleting, resizing, etc.  It works really well, and 
provides Action mappings to allow accessing images as if they were on the disk 
in the images directory.

    The problem is that I've copied and pasted this code 6 times, for 6 
separate projects.  For each project I have to include the actions, put the 
view jsp's under the WEB-INF, put any images/css in the project war directory, 
and modify the web.xml.   Then repeat if I fix a bug in it.

    So, this is where the question is coming from...  in your own development 
environments, what strategies do you use to mitigate this churn?  ...  today.  
;)

    Thanks!
    George








    On Wed, Apr 20, 2011 at 2:00 PM, Janne Jalkanen <janne.jalka...@ecyrd.com 
<mailto:janne.jalka...@ecyrd.com>> wrote:

        > As for the GIt conversion, I don't get it. We're not the Linux 
kernel. There aren't zillions of patches pending to be applied every day. In fact, 
there are pretty much zero patches. If folks want to make changes, and make a 
difference, then make or find an issue on Jira, and submit a patch. There's 
nothing in the toolset holding that up. When Ben throws up the white flag because 
of the crushing load of source patches coming in to core instead of just chatter 
on the ML, then maybe there's motivation to change to something like Git.

        I don't really care what Stripes uses (other than I have a deep dislike 
and fear of Maven, but I'm not the one who has to live with it ;-), but I think 
this is a misunderstanding of the power of Git.

        I don't use Git because I expect a lot of contributions. I use Git for 
all my own projects because of two reasons:

        1) Local commits. You don't need IP connectivity to commit anything. 
This has the advantage that you can keep the workflow even while traveling or 
when the internet goes bad.
        2) Easy branching and merging. It makes a lot of sense to always start 
a clean branch *from a stable root* when you're hacking on a feature. You can 
keep committing, tinker at will, and then finally merge the whole thing at the 
root, or just throw the branch away. This is especially valuable when multiple 
people work on the same tree (you get to keep the master stable and new 
features get merged in when they are stable(ish)), but it works really well 
when you're developing on your own too. I'm a bit ADHD when it comes to 
development, and I often try out different things. With SVN you need to keep 
multiple projects open, with Git you just switch between branches, cherry-pick 
changes, merge and branch.

        In fact, whenever a project uses SVN, I just usually check it out as a 
Git project and use Git locally on it... Git has good SVN support, but a native 
Git project is always better.

        Just my 2c.

        /Janne
        
------------------------------------------------------------------------------
        Benefiting from Server Virtualization: Beyond Initial Workload
        Consolidation -- Increasing the use of server virtualization is a top
        priority.Virtualization can reduce costs, simplify management, and 
improve
        application availability and disaster protection. Learn more about 
boosting
        the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev
        _______________________________________________
        Stripes-users mailing list
        Stripes-users@lists.sourceforge.net 
<mailto:Stripes-users@lists.sourceforge.net>
        https://lists.sourceforge.net/lists/listinfo/stripes-users



    
------------------------------------------------------------------------------
    Benefiting from Server Virtualization: Beyond Initial Workload
    Consolidation -- Increasing the use of server virtualization is a top
    priority.Virtualization can reduce costs, simplify management, and improve
    application availability and disaster protection. Learn more about boosting
    the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev
    _______________________________________________
    Stripes-users mailing list
    Stripes-users@lists.sourceforge.net 
<mailto:Stripes-users@lists.sourceforge.net>
    https://lists.sourceforge.net/lists/listinfo/stripes-users



------------------------------------------------------------------------------
Benefiting from Server Virtualization: Beyond Initial Workload
Consolidation -- Increasing the use of server virtualization is a top
priority.Virtualization can reduce costs, simplify management, and improve
application availability and disaster protection. Learn more about boosting
the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev


_______________________________________________
Stripes-users mailing list
Stripes-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/stripes-users

--
0x2B | ~0x2b  --  Hamlet

------------------------------------------------------------------------------
Benefiting from Server Virtualization: Beyond Initial Workload 
Consolidation -- Increasing the use of server virtualization is a top
priority.Virtualization can reduce costs, simplify management, and improve 
application availability and disaster protection. Learn more about boosting 
the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev
_______________________________________________
Stripes-users mailing list
Stripes-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/stripes-users

Reply via email to