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

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

Slack Rebuilds Notification System, Reports 5X Increase in Settings Engagement

Slack has rebuilt its notification system with a unified architecture that separates activity from delivery, improving consistency across platforms. The redesign simplifies preferences, preserves legacy settings through transformation, and resulted in a 5x increase in user engagement with notification settings along with reduced support tickets.

By Leela Kumili

GitHub Acknowledges Recent Outages, Cites Scaling Challenges and Architectural Weaknesses

GitHub has publicly addressed a series of recent availability and performance issues that disrupted services across its platform, attributing the incidents to rapid growth, architectural coupling, and limitations in handling system load.

By Craig Risi

Presentation: Dynamic Moments: Weaving LLMs into Deep Personalization at DoorDash

Sudeep Das and Pradeep Muthukrishnan explain the shift from static merchandising to dynamic, moment-aware personalization at DoorDash. They share how LLMs generate natural-language "consumer profiles" and content blueprints, while traditional deep learning handles last-mile ranking. This hybrid approach allows the platform to adapt to short-lived user intent and massive catalog abundance.

By Sudeep Das, Pradeep Muthukrishnan

Article: Redesigning Banking PDF Table Extraction: A Layered Approach with Java

PDF table extraction often looks easy until it fails in production. Real bank statements can be messy, with scanned pages, shifting layouts, merged cells, and wrapped rows that break standard Java parsers. This article shares how we redesigned the approach using stream parsing, lattice/OCR, validation, scoring, and selective ML to make extraction more reliable in real banking systems.

By Mehuli Mukherjee

Cloudflare Introduces Project Think: A Durable Runtime for AI Agents

Cloudflare's Project Think introduces a new framework for AI agents, shifting from stateless orchestration to a durable actor-based infrastructure. It features a kernel-like runtime enabling agents to manage memory and run code securely. Innovations include Fibers for checkpointing progress and a Session API for relational conversations, enhancing agent efficiency and resilience.

By Patrick Farry

© 2026   Created by Michael Levin.   Powered by

Badges  |  Report an Issue  |  Terms of Service