There's two ways to go on this job: my way or the highway.
Ese podría ser el lema de Maven, o como decía la versión traducida de Reservoir Dogs
"Hay dos formas de hacer el trabajo, la mía o la puta calle."

Comienzo con esa cita porque, para qué nos vamos a engañar, esa escena es genial y esa es la típica frase que a veces nos vemos tentados a soltar pero no hacemos por ser correctos. Maven es un poco así, te obliga a hacer las cosas a su manera, pero todo es por tu bien.


Si bien se puede personalizar su forma de funcionar la gente que lo usa te sugiere que mejor no empeñarse en retorcerlo a nuestro gusto.
Deja que Maven conduzca...

La estructura de directorios de un proyecto Maven sería así, no hay que hacerla a mano te la puede generar el propio
Maven o un IDE.

Proyecto/pom.xml
Proyecto/src
Proyecto/src/main
Proyecto/src/main/java/Hola.java
Proyecto/src/main/resources
Proyecto/src/test


Tras ejecutar mvn install, se ejecutarían las siguientes tareas por defecto: procesar recursos si los hubiera, compilar código, compilar y pasar test unitarios si las hubiero, generar un fichero jar e instalarlo en el repositorio local para que otros proyectos lo usen.

En el proyecto se generaría la carpeta Target con el resultado:

Proyecto/target
Proyecto/target/Hola-1.0.jar
Proyecto/target/classes/Hola.class


El contenido del fichero pom.xml es el siguiente, muy mínimo:

4.0.0
info.pello.maven.hellomaven
00HelloMaven
1.0


Maven es mucho más que una herramienta para automatizar la compilación de código. Se considera como una herramiento para gestionar proyectos de software. Aunque en un primer vistazo nos encontramos con un fichero xml y un comando que pone todo en marcha (como ant), Maven va mucho más allá. Partiendo
de un interfaz único Maven es capaz de resolver las dependencias  de los componentes del proyecto y reutiliza infinidad de plugins para resolver cualquier tarea.

La base de Maven es muy pequeña pero sin embargo según las tareas que se le requieran de forma automática se descarga todos los plugins necesario de un repositorio central a uno local. La mayor parte de las tareas de Maven la realizan esos plugins.

Los IDEs tienen soporte para crear proyectos basados en Maven. Netbeans desde hace más tiempo que Eclipse, que por fin
en la versión Kepler parece traer proyectos Maven de serie. Y si es una forma unificada de configurar un poryecto, solamente por eso merece la pena usarlo.