Monday, July 24, 2006

Maven Thoughts

As much as I disliked Maven 1 , I've come to enjoy and rely on Maven 2.

It's getting things done for me. It's fast. The Maven plugin for Eclipse (that is, an Eclipse Plugin that support Maven, rather than the Maven plugin that generates Eclipse control files) seems to work well, automatically picking up changes to my pom.xml, as well as automatically downloading dependencies. And I'm using it in a tough way, given that I'm also using AJDT on the same projects.

I also think that the new "almost plain text" format is a godsend; it makes it much eaiser to quickly assemble good documentation. I'm trying to write documentation before writing code for Tapestry 5.

Still, maybe 20% of the time, I don't feel that I'm using a tool so much as appeasing a petty god. There's still a number of things I can do easily in Ant that seem to require writing Maven Mojos and plugins to do in Maven.

4 comments:

  1. Thanks Howard. Glad you liked the Eclipse plugin. I hope to continue working on it.

    By the way, you owe me some requirements for "commons" subproject for ASM. If you remember, we briefly chatted about it at JavaOne...

    ReplyDelete
  2. I'll try and keep those ideas together as I work on Tapestry 5 IoC, in terms of what kind of classes I'm creating. I've been changing the ClassFab interface (the API used when creating new classes) to move more common behaviors into the interface. I think Tapestry 5 will have a hard dependency on Javassist, more so than HiveMind, because Tapestry 5 (for pages and components) does a lot fo AOP transformations of the class ... introducing interfaces, replacing fields with methods, etc.

    ReplyDelete
  3. Still, maybe 20% of the time, I don't feel that I'm using a tool so much as appeasing a petty god.

    :)

    I think I know how you feel at times. There are a few areas where it could be much easier to use.

    I've been meaning to add "easier plugin scripting" to the list for some time, so I've done that now. I think there are certainly situations where you kind of want an "inline plugin" for one shot use, without changing the way things work or discouraging reuse too much.

    Anyway, I'm glad its working out for you. I'm finding the same thing with APT myself, scribbling design docs as I go meaning that there will actually be something there for the next sucker :)

    ReplyDelete
  4. Howard, those are really good candidates for ASM commons library. It would be great if you could publish list of the transformations you using somewhere.

    ReplyDelete

Please note that this is not a support forum for Tapestry. Requests for help will be deleted. Please subscribe to the Tapestry user mailing list if you are in need of support, or contact me directly for professional (for pay) support.

Spammers: Don't bother. I delete your comments and it's a waste of time for both of us. 垃圾邮件发送者:不要打扰。我删除您的评论和它的时间对我们双方的浪费