Entonces, he usado Maven durante unos años y hace aproximadamente un mes decidí sumergirme en Gradle. Si tuviera que hacerlo nuevamente, mi veredicto en este punto es: no te molestes.
Ojalá fuera de otra manera.
A partir de hoy, AFAICT, no hay razón para cambiar de maven y hay muchas razones para no hacerlo. (Advertencias: si estás haciendo desarrollo de Android y / o si quieres escribir lógica de compilación personalizada en Groovy, entonces ve a gradle). Quería que me gustara más gradle. El formato simplificado de sus archivos de compilación es atractivo. Pero, después de un mes, descubro que en su mayoría solo estoy luchando con eso, mientras que maven, aunque crujiente en muchos sentidos, hace lo razonable.
- Cómo ser un buen desarrollador
- ¿Cómo se convierte un desarrollador de software en un consultor independiente?
- ¿Cuáles son algunas historias de éxito de graduados de campamentos de programación / codificación en línea a tiempo parcial?
- ¿Qué están desarrollando los desarrolladores en un turno de 9-5 cuando el software ya está hecho?
- ¿Cuánto ganan en promedio los desarrolladores de aplicaciones en publicidad por clic y cuál es el CTR promedio?
Puntos particulares:
Los perfiles + Maven son útiles. Si bien escribir la lógica condicional para gradle no es difícil, terminas con esta lógica esparcida en todo tipo de secciones del archivo de compilación. Yuck
+ Pruebas de integración: Maven sabe cómo hacer esto de forma inmediata. Gradle … bueno, es complicado. Por lo general, debe reestructurar su código.
+ Padre pom y definiciones externalizadas. Maven … horneado. Gradle … rodar el tuyo. Ah, y esos números de versión comunes y compartidos … buena suerte en gradle si está usando eso para un complemento porque el especificador de complemento DEBE ser lo primero, por lo tanto, debe codificar esas cosas. ¿Por qué?
La manera súper funky de Gradle de almacenar dependencias en su carpeta local. ¿Por qué?
+ Construir un “súper jar” sombreado en gradle es un trabajo extra.
Hay más problemas, pero tal vez entiendes el punto.
En resumen, el gradle se ve mejor en la sala de exposición o en el garaje, pero una vez que lo sacas a dar una vuelta, no maneja ni conduce mejor para las tareas regulares y para muchos es peor.
Quiero una experiencia que coincida con la impresión dada por los archivos de construcción inicialmente delgados: un lugar donde las cosas simplemente funcionan y la mayoría de las cosas que haces como desarrollador Java se piensan de antemano. Gradle recibe accesorios por ser más de uso general que maven. Pero…. No vale la pena el esfuerzo en este momento.
Prefiero una herramienta que acaba de mover a Maven hacia adelante. Maven es una buena conceptualización del desarrollo de Java. Se beneficiaría de una evolución seria. Sin embargo, no estoy seguro de que la revolución de Gradle me lleve a un lugar mejor. Ojalá lo hiciera.
Ni siquiera voy a cubrir la hormiga. No lo he usado en más de 3 años, excepto bajo coacción y SOooo a menudo ha encontrado construcciones imposibles de mantener que usan hormigas y han sido una pesadilla operativa. (Dicho esto, si debe seguir esa ruta, al menos use Ivy con ella).