File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Spring and the fly likes Adding and removing Roo Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Java Interview Guide this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Frameworks » Spring
Bookmark "Adding and removing Roo" Watch "Adding and removing Roo" New topic

Adding and removing Roo

Bill Gorder

Joined: Mar 07, 2010
Posts: 1682

Hi Ken,

I have not had as much opportunity as I would like to play with Roo, and I will admit that it has evolved quite a bit since I last played with it

I typically work on large enterprise applications where Roo is not something many of the developers use or are comfortable with. Therefore when I check my source into subversion and another developer grabs it that does not use Roo it would cause confusion or issues. I had tried removing the Roo nature and adding it back it and it really did not seem to work very well. Have you had to address this issue before? Is it possible now for me to check in a project and have it be transparent to other developers that I was using Roo and conversely check out a project that was not created with Roo and still benefit from what Roo has to offer?


[How To Ask Questions][Read before you PM me]
Ken Rimple
Ranch Hand

Joined: Jul 20, 2010
Posts: 63

I have not really had the need to do this either. I know it is do-able, and you'd basically remove the annotations, comment out the annotations dependency, and push everything in if you want to remove AspectJ from your project.

If you do all of that, when you want to put it back on again, you may end up having to not roo-ize the existing artifacts or you will have a mess on your hands. Maybe you just add those additional entities or services, and keep the rest in Spring.

As Roo is compile-time and not run-time, it should not pose a performance problem to leave it there, but not use the Roo shell again.

The only downside is that Roo tends to want to screw up your web config and get it back to what it thinks you want when you re-add it. For example, I removed Tiles from my configuration to use SiteMesh on a project, get rid of JSPX, etc. But when I launched the Roo shell, it detected that we had controllers that were annotated and therefore it set up my project again. Good thing for git checkout, eh?

So, if you find anything quirky like this, I'd add a JIRA to get a request in to not manipulate those artifacts when attaching Roo to that project.

Long winded way of not answering the question, but that's my 2 cents.

Ken Rimple
Co-author, Manning Spring Roo in Action
I teach for Chariot Solutions (Spring, Maven, Hibernate, other courses). Schedule here
I agree. Here's the link:
subject: Adding and removing Roo
It's not a secret anymore!