I've used Maven2 for many projects. It's a excellent build management tool, especially if you are in a shop where you need to manage more than handful of projects. Maven let you setup your projects very consistently, and you can use same commands to build and package artifacts uniformly.

If you haven't used Maven before, check out some tutorial on http://maven.apache.org. I have contributed a walk through tutorial Wiki on maven site before, and you may read here: http://docs.codehaus.org/display/MAVENUSER/Getting+started+with+Mav...

Also, the Scala programming community has a great Maven plugin support, and with latest release, you may have both Java and Scala sources in the same project and they works very nicely. I have a simple project that you may use as template here: http://sweetscala.googlegroups.com/web/scala-java-app.zip

Just unzip it and cd into the project dir to type: mvn package, and look into your target dir, you will have a jar file created for you!

I am not here to start a war on Maven vs Ant. I think both are great tools, and I use Ant for some project as well. Maven is just another tool in the shed that I like to use, and would like to hear from anyone here who has experience to share.

Zemian Deng

Views: 56

Replies to This Discussion

Not long ago, scala-lang.org published a small intro to maven article here http://www.scala-lang.org/node/345

RSS

Happy 10th year, JCertif!

Notes

Welcome to Codetown!

Codetown is a social network. It's got blogs, forums, groups, personal pages and more! You might think of Codetown as a funky camper van with lots of compartments for your stuff and a great multimedia system, too! Best of all, Codetown has room for all of your friends.

When you create a profile for yourself you get a personal page automatically. That's where you can be creative and do your own thing. People who want to get to know you will click on your name or picture and…
Continue

Created by Michael Levin Dec 18, 2008 at 6:56pm. Last updated by Michael Levin May 4, 2018.

Looking for Jobs or Staff?

Check out the Codetown Jobs group.

 

Enjoy the site? Support Codetown with your donation.



InfoQ Reading List

Breaking Silos: Netflix Introduces Upper Metamodel to Bring Consistency Across Content Engineering

Netflix has introduced the Upper metamodel within its Unified Data Architecture (UDA) to standardize domain definitions and generate consistent data container representations. UDA links conceptual models to GraphQL, Avro, SQL, and Java artifacts, supporting projections, mappings, and knowledge graph-based discovery across content, advertising, and operational systems.

By Leela Kumili

React Advanced 2025: Type Safe URL State Management Takes Center Stage with Nuqs

Nuqs, a cutting-edge open-source URL state manager for React, revolutionizes application development with its type-safe approach. Showcased at React Advanced 2025, it empowers developers to share complete app states via URLs, enabling "teleportation" and "time travel." Adopted by industry leaders, Nuqs simplifies state management while ensuring robust performance and type safety.

By Daniel Curtis

Presentation: Empowering Teams: Decentralizing Architectural Decision-Making

Peter Hunter & Elena Stojmilova share Open GI's journey from a slow, legacy monolith to a cloud-native SaaS platform. They detail how adopting Team Topologies and a decentralized architectural approach empowered teams. Key practices discussed include utilizing Domain-Driven Design to create a Context Map, implementing the Advice Process with Architectural Principles, and more.

By Peter Hunter, Elena Stojmilova

Podcast: Leading from Any Position: Richard Bown on Humane Engineering Organizations

In this podcast, Shane Hastie, Lead Editor for Culture & Methods, spoke to Richard Bown about transitioning from management back to individual contributor roles, leading from any position, and creating humane engineering organizations.

By Richard Bown

New Front-End Framework Ripple Blends React and Svelte Together

Ripple is a new open-source front-end framework taking ideas from React, SolidJS, and Svelte into a TypeScript-first, component-oriented, JSX-like compiled language with fine-grained reactivity and scoped CSS. Ripple offers a reactivity system with automatic dependency tracking, and direct DOM updates without a virtual DOM. Ripple aims to support better debugging through AI agents.

By Bruno Couriol

© 2025   Created by Michael Levin.   Powered by

Badges  |  Report an Issue  |  Terms of Service