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: 58

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

Solving Fragmented Mobile Analytics: Uber’s Platform-Led Approach

Uber Engineering outlines its platform-led mobile analytics redesign, standardizing event instrumentation across iOS and Android to improve cross-platform consistency, reduce engineering effort, and provide reliable insights for product and data teams.

By Leela Kumili

LangGrant Unveils LEDGE MCP Server to Enable Agentic AI on Enterprise Databases

LangGrant has launched the LEDGE MCP Server, a new enterprise platform designed to let large language models reason across complex database environments without directly accessing or exposing underlying data.

By Craig Risi

Google Introduces Conductor, a Context-Driven Development Extension for Gemini CLI

Google has released Conductor, a new preview extension for Gemini CLI that introduces a structured, context-driven approach to AI-assisted software development. The extension is designed to address a common limitation of chat-based coding tools: the loss of project context across sessions.

By Robert Krzaczyński

Microsoft Share Update on TypeScript 7

Microsoft's TypeScript 7, codenamed Project Corsa, transforms the compiler with a complete rewrite in Go, achieving up to 10x faster builds and reduced memory usage. With strict mode enabled by default, this update enhances type safety while maintaining compatibility. Developers are excited about the performance gains and improved efficiency for large codebases.

By Daniel Curtis

Presentation: Java Concurrency from the Trenches: Lessons Learned in the Wild

Hugo Marques explains how to navigate Java concurrency at scale, moving beyond simple frameworks to solve high-throughput IO challenges. Drawing from real-world Netflix projects, he discusses the pitfalls of nested parallel streams, managing backpressure with semaphores, and the shift from bounded executors to Virtual Threads. Learn to protect downstream services while maximizing JVM performance.

By Hugo Marques

© 2026   Created by Michael Levin.   Powered by

Badges  |  Report an Issue  |  Terms of Service