Todo desarrolldor Java conoce Maven. Una herramienta que funciona igual que en su día ant o Gradle. La idea es teer una herramienta que en base a la configuración del proyecto (ficheros pom.xml) sabe cómo compilar, en qué orden y qué dependencis tiene (además de resolverlas e instalarlas si puede).
Normalmente se compila usando un comando como mvn compile
o mvn package
, el resultado se generar e un subdirectorio llamado target. Para limpiar el proyecto y borrar todo el contenido generado se usa el comando mvn clean
.
Cuando tenemos un proyecto con subproyectos (submodulos, en maven) si es muy complicado puede volverse loco y no hacerlo bien. En Bash tenemos un truco para borrarlos de forma recursiva, con el comando (ejecutado en el raíz del proyecto):
for f in $(find . -type d -name target -exec echo {} \;); do rm -rf $f; done
Podemos ver el tamáño del directorio con:
du -h -d1
Por ejemplo, si comparamos un proyecto antes y después de hacer esto:
Una diferenci de 9 GB !!!