Estoy aprendiendo a programar en Java pero me está costando entender cosas como Jenkins / Maven / ANT, etc. ¿Cómo aprendo a trabajar con ellos?

Mi recomendación para este conjunto particular de tecnologías es no aprenderlas todas al mismo tiempo.

Maven es una herramienta de gestión de proyectos que le permite definir su proyecto y sus dependencias. Se basa en gran medida en la convención: su código va en un lugar específico y los pasos específicos son compatibles de forma predeterminada. Es compatible con la personalización, pero es más fácil cuando personalizas lo menos que puedes.

ANT es una herramienta de construcción. Describe, utilizando XML, cómo desea que se construya su proyecto y ANT lo construirá. No gestiona el proyecto por usted, todo lo que desea hacer debe definirse explícitamente.

Jenkins es una herramienta de integración continua. Le dice dónde obtener su código y qué hacer con él y cuándo, y hace lo que le dice. Por lo general, se usa para verificar periódicamente el código en busca de actualizaciones y ejecutar cualquier herramienta de compilación que use para garantizar que esas actualizaciones sean válidas.

Si recién estás comenzando, elige Maven o ANT e ignora los otros 2 por ahora.

Mi recomendación personal es Maven. Puede ejecutar un proyecto con menos de 10 líneas de XML, y podrá convertir su código fuente Java en un archivo JAR. Será fácil agregar dependencias en bibliotecas o agregar pruebas unitarias.

Si solo aprende uno de los tres, Maven le ofrece la mejor inversión por su dinero.

Más tarde, puede aprender cómo usar Jenkins para hacer compilaciones automáticamente, o aprender ANT para compararlo con el funcionamiento de Maven. Por ahora, sin embargo, solo necesitas el.

En cuanto a “ cómo”, comience con “ Maven en 5 minutos ” y trabaje desde allí.

Maven en 5 minutos te dará lo que necesitas para un curso intensivo muy rápido.

Una vez que tenga el proyecto en funcionamiento, solo concéntrese en construir algo genial con Java. Deje que Maven se mezcle con el fondo: su trabajo es no tener importancia .

Mientras trabaja en su proyecto, pueden surgir ciertos requisitos especiales. Por ejemplo, es posible que desee integrar la biblioteca JodaTime . Eso es un trabajo para Maven, pero ahora tendrá una cosa concreta que desea hacer que es mucho más fácil de investigar.

¡Buena suerte! Y si tiene alguna pregunta, extiéndase en los comentarios. Disfruto ayudando a la gente a aprender.

Aquí están mis recomendaciones para ti,

a. Comprenda cómo va a construir su código sin un IDE (usando la línea de comandos, como javac …)

si. Una vez que comprenda el proceso utilizando archivos por lotes o sh, descubra cómo ANT puede ayudarlo a ejecutar todo eso. Al igual que en la compilación, es posible que esté compilando, generando archivos de clase, incluidas bibliotecas (extrayendo o incluyendo en manifiesto), y luego creando un archivo jar.

C. Las bibliotecas siempre son una molestia para el cuello, pero puede encontrar cómo puede encontrar el equivalente de ANT en MAVEN; e intente ejecutar una compilación de código después de eso. MAVEN es mucho más fácil, pero tanto MAVEN como ANT deben ejecutarse manualmente.

re. Si necesita construir su código todos los días o en un horario, o cuando algo se confirmó en el repositorio, necesita una herramienta de construcción automática o un planificador. Jenkins es su solución, solo configure un trabajo y señale MAVEN o ANT para ejecutarlo por usted. Jenkins lo ayudaría a ejecutar cosas automáticamente (obtener código, ejecutar trabajo, crear ejecutable e informar).

Hay numerosos tutoriales de cada uno; así que ve solo en cada uno por uno.

Probaría una pequeña demostración para aprender a trabajar con estos. Quizás comience a comprender los conceptos de maven para construir sus proyectos java. (Entonces, cómo configurar un proyecto Java simple en Maven y cómo compilar y empaquetar su compilación. Es importante tener una buena comprensión del repositorio de Maven y el ciclo de vida).

Una vez que haya llegado hasta aquí, intente crear un trabajo simple de jenkin para construir esto (para obtener su código y compilarlo usando el comando maven). No es difícil poner a Jenkins en funcionamiento. Vea la página de inicio de jenkins para más detalles.

Este sería un buen punto de partida en mi opinión. Y luego intente desarrollar su conocimiento con ejemplos más complejos.

Nota: ANT es otra herramienta de compilación, pero es poco probable que lo necesite si ya está usando Maven (fue anterior a Maven, todavía es útil hasta cierto punto, pero no he necesitado usar ANT en muchos años y dejarlo caer me cortará abajo las herramientas que necesitarás tener en tu arsenal).

Salud

Permítanme decir que no he trabajado con todo en esa lista. La mejor manera en que he logrado aprender nuevas tecnologías, bibliotecas, etc. Por lo general, trato de construir un proyecto que requiera todos esos componentes, siempre la mejor manera de aprender.