Sorry, this page is no longer available
We may earn an affiliate commission when you visit our partners.
Course image
José Miguel Moya

Bienvenidos al curso Apache Maven: Construcción de proyectos de cero a avanzado.

En este curso aprenderás a trabajar con Apache Maven.

Apache Maven es una herramienta popular para la automatización de compilaciones. Maven aborda dos aspectos de la creación de software. Primero, describe cómo se construye un software y, segundo, describe sus dependencias. El objetivo de este curso es aprender a trabajar con Apache Maven para facilitar el proceso de construcción de sus proyectos proporcionando un sistema de construcción uniforme y siguiendo las mejores prácticas de desarrollo.

Read more

Bienvenidos al curso Apache Maven: Construcción de proyectos de cero a avanzado.

En este curso aprenderás a trabajar con Apache Maven.

Apache Maven es una herramienta popular para la automatización de compilaciones. Maven aborda dos aspectos de la creación de software. Primero, describe cómo se construye un software y, segundo, describe sus dependencias. El objetivo de este curso es aprender a trabajar con Apache Maven para facilitar el proceso de construcción de sus proyectos proporcionando un sistema de construcción uniforme y siguiendo las mejores prácticas de desarrollo.

El material que proponemos en el curso está pensado para todas las personas que bien deseen iniciarse en el trabajo con Apache Maven, o que por otro lado, deseen consolidar los conocimientos que ya poseen sobre los temas que se abordarán. El curso está diseñado de una forma progresiva y gradual que le permitirá al estudiante entender y desarrollar las principales habilidades para el trabajo con Apache Maven. Además, se abordarán temas avanzados que le enseñarán a realizar construcciones personalizadas de su proyecto que cumplan todo tipo de requerimientos. También, aprenderá a documentar completamente su proyecto de una forma sencilla.

Empezamos el curso con una breve introducción sobre qué es Apache Maven y cuáles son sus principales objetivos y características. Posteriormente, continuamos con una sección en donde los guiaremos para que instalen y configuren Apache Maven en su sistema operativo favorito. Una vez hayan concluido esta sección, estarán en condiciones de crear y construir proyectos sencillos utilizando Apache Maven. Las siguientes secciones del curso están pensadas para entender y aplicar en la práctica las principales cuestiones sobre el lifecycle, los plugin y la documentación de proyectos con Apache Maven.

El temario procura en todo momento analizar temas específicos por cada lección, permitiéndole así al estudiante localizar rápidamente cualquier contenido de forma rápida. La mayoría de las lecciones están conformadas por una parte teórica y otra práctica.

Mi nombre es José Miguel Moya y me desempeño actualmente como Ingeniero de Datos Senior en BBVA México. Como parte de mi trabajo diario utilizo Apache Maven para la construcción y el manejo de proyectos con Scala y Apache Spark para obtener y procesar enormes cantidades de datos.

Te invito a que veas el video de presentación del curso y las lecciones gratuitas.

Te espero en el curso, tenga usted un cordial saludo.

Enroll now

What's inside

Syllabus

Conocerán que es Apache Maven y cuáles son sus características principales. Crearán y construirán un proyecto con Maven. Además, conocerán del repositorio local y la carpeta target de Maven.
Read more

En esta lección aprenderemos qué es Apache Maven y cuáles son los objetivos principales de Maven.

En esta lección veremos cuáles son las características de Maven.

En esta lección aprenderemos a instalar Maven en Windows.

En esta lección aprenderemos a instalar Maven en macOS.

En esta lección aprenderemos a instalar Maven en Linux.

En esta lección aprenderemos a cambiar el JDK usado por Maven.

En esta lección explicaremos la estructura del repositorio de GitHub del curso y cuál es la forma recomendada de descargarlo.

En esta lección aprenderemos a crear un proyecto con Maven.

En esta lección aprenderemos a construir el proyecto Maven creado en la lección anterior.

En esta lección aprenderemos donde está ubicado el repositorio local de Maven en nuestra computadora y cómo podemos cambiar su ubicación.

En esta lección aprenderemos a ejecutar Maven a través de un servidor proxy.

En esta lección aprenderemos sobre el contenido de la carpeta target.

En esta lección aprenderemos a crear e importar un proyecto Maven desde IntelliJ IDEA. Veremos también cómo ejecutar algunos goals de Maven desde este IDE.

En esta lección aprenderemos a crear e importar un proyecto Maven desde Eclipse. Veremos también cómo ejecutar algunos goals de Maven desde este IDE.

En esta lección aprenderemos sobres los ciclos de vida de compilación de Maven.

En esta lección vamos a ver cómo están conformados los archivos pom y settings y algunos de sus elementos básicos.

En esta lección aprenderemos sobre los perfiles de Maven y cómo podemos agregar un perfil en Maven.

En esta lección aprenderemos a trabajar con las propiedades de Maven y veremos cómo esto nos ayuda a realizar compilaciones que son independientes de la plataforma en donde se ejecute nuestro proyecto.

En esta lección aprenderemos a trabajar con el plugin Maven Clean.

En esta lección aprenderemos a trabajar con el plugin Maven Compiler.

En esta lección aprenderemos a trabajar con el plugin Maven Surefire.

En esta lección aprenderemos a trabajar con el plugin Maven Resources.

En esta lección aprenderemos a trabajar con el plugin Maven JaCoCo.

En esta lección explicaremos brevemente cómo puede instalar SonarQube en su computadora y aprenderemos a trabajar con el plugin Maven SonarQube.

En esta lección aprenderemos sobre el scope de las dependencias en Maven.

En esta lección aprenderemos a obtener un informe de dependencias de nuestro proyecto.

En esta lección aprenderemos a copiar las dependencias de nuestro proyecto a una ubicación diferente dentro de la carpeta target.

En esta lección aprenderemos a detectar dependencias no utilizadas o no declaradas en nuestro proyecto.

En esta lección veremos cómo IntelliJ IDEA gestiona las dependencias de nuestro proyecto.

En esta lección veremos cómo Eclipse gestiona las dependencias de nuestro proyecto.

En esta lección aprenderemos a generar la documentación de nuestro proyecto con el plugin Maven Site.

En esta lección aprenderemos a generar la documentación para proyectos Java mediante Javadocs.

En esta lección veremos cómo incluir la cobertura de código de las pruebas unitarias de nuestro proyecto en el sitio de documentación.

En esta lección veremos cómo podemos generar informes de documentación personalizados.

En esta lección veremos cómo podemos publicar nuestro sitio web de documentación una vez que ya esté generado.

En esta lección aprenderemos a incluir o excluir carpetas y archivos adicionales ya sea para la compilación o las pruebas de nuestro proyecto.

En esta lección aprenderemos a construir un proyecto sin conexión a Internet.

En esta lección aprenderemos a controlar los logs de Maven.

En esta lección aprenderemos a trabajar con el plugin Maven Help.

En esta lección aprenderemos a crear un proyecto multimódulo con Maven.

En esta lección veremos cómo gestionar las dependencias de Maven en proyectos multimódulo.

En esta lección veremos cómo gestionar los plugins de Maven en proyectos multimódulo.

En esta lección aprenderemos a construir los módulos de un proyecto multimódulo de forma selectiva.

En esta lección aprenderemos a generar la documentación de un proyecto multimódulo con Maven.

En esta lección aprenderemos a crear un jar que puede ser ejecutado de manera sencilla si la necesidad de informarle parámetros extras.

En esta lección aprenderemos a crear un proyecto WAR con Maven.

En esta lección aprenderemos a crear un proyecto EAR con Maven.

En esta lección aprenderemos a ejecutar aplicaciones web con Jetty en nuestra computadora.

En esta lección aprenderemos a crear un jar con dependencias el cual contendrá todas las dependencias necesarias para ejecutar nuestro proyecto.

En esta lección aprenderemos a crear ejecutables personalizados como parte de nuestro proyecto.

En esta lección veremos cómo determinar si existen actualizaciones para los plugins y las dependencias de nuestro proyecto, así como los requisitos que se deben cumplir para poder llevar a cabo estas actualizaciones.

En esta lección daremos las conclusiones del curso y algunos consejos ahora que ha concluido el curso de forma satisfactoria.

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Provides a comprehensive guide to Apache Maven, starting with installation and basic project creation, which is ideal for those new to build automation
Covers advanced topics such as multi-module projects, WAR and EAR creation, and custom executable JARs, which are essential for complex enterprise applications
Explores integrating Maven with popular IDEs like IntelliJ IDEA and Eclipse, streamlining the development workflow for users of these environments
Includes lessons on generating project documentation with Maven Site and Javadocs, which promotes best practices for project maintainability and collaboration
Teaches how to manage dependencies, including scopes, reporting, and unused dependency detection, which helps maintain a clean and efficient project structure
Requires learners to install and configure Apache Maven on their operating system, which may present a challenge for those unfamiliar with command-line tools

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Curso completo de apache maven, básico a avanzado

Según los estudiantes, este curso de Apache Maven es completo, guiando desde cero a avanzado. Lo consideran fácil de seguir y destacan los ejemplos prácticos como muy útiles para comprender el ciclo de vida, plugins, y gestión de dependencias. La cobertura de temas como proyectos multi-módulo y otros temas avanzados es apreciada. Varios lo ven como un curso bien estructurado impartido por un profesional real. Aunque generalmente positivo, algunos mencionan que podría mejorar con ejemplos más complejos en secciones avanzadas.
Explicaciones claras y experiencia profesional
"El instructor es claramente un profesional real."
"Sus explicaciones fueron muy claras y bien estructuradas."
"Se nota su experiencia en el manejo diario de Maven."
Amplitud de temas, de básico a avanzado
"Sentí que cubrió todo, desde lo básico hasta temas avanzados."
"Aprecié que se tocaran temas como multi-módulo y WAR/EAR."
"Consolidé mis conocimientos sobre muchos aspectos de Maven."
Demostraciones prácticas muy valoradas
"Los ejemplos prácticos fueron muy útiles para mí."
"Pude aplicar los conceptos gracias a las demos."
"Las secciones prácticas realmente me ayudaron a entender."
Excelente punto de partida desde cero
"Cubre Maven desde cero, fácil de seguir para mí."
"Sólida introducción a Maven. Bueno para principiantes."
"El curso me llevó de cero a entender conceptos clave."
Algunos temas avanzados podrían profundizar más
"Algunos temas avanzados se sintieron un poco apresurados para mí."
"Me hubiera gustado ver ejemplos más complejos, especialmente en multi-módulo."
"La base es excelente, pero los temas avanzados necesitan más detalle práctico."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Apache Maven: Construcción de proyectos de cero a avanzado with these activities:
Repasar los conceptos básicos de Java
Refrescar los conocimientos básicos de Java para comprender mejor los ejemplos y la configuración de Maven.
Browse courses on Java SE
Show steps
  • Revisar tutoriales de Java para principiantes.
  • Escribir pequeños programas en Java para practicar la sintaxis.
  • Repasar los conceptos de clases, objetos, herencia y polimorfismo.
Revisar 'Maven: The Complete Reference'
Proporcionar una referencia completa y detallada sobre todos los aspectos de Maven.
Show steps
  • Leer los capítulos introductorios sobre la filosofía y los conceptos de Maven.
  • Consultar los capítulos relevantes a medida que se avanza en el curso.
  • Utilizar el libro como referencia para resolver problemas y comprender conceptos avanzados.
Crear un proyecto de ejemplo con dependencias
Practicar la creación de un proyecto Maven desde cero, incluyendo la gestión de dependencias y la configuración del archivo POM.
Show steps
  • Crear un nuevo proyecto Maven utilizando un arquetipo.
  • Añadir dependencias al archivo POM.
  • Construir el proyecto y verificar que las dependencias se descarguen correctamente.
  • Escribir un programa sencillo que utilice las dependencias.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Revisar 'Better Builds with Maven'
Aprender las mejores prácticas para construir proyectos Maven de forma eficiente y optimizada.
Show steps
  • Leer los capítulos sobre la gestión de dependencias y la optimización del proceso de construcción.
  • Aplicar las mejores prácticas aprendidas en proyectos personales o profesionales.
  • Experimentar con diferentes plugins y configuraciones para mejorar la eficiencia de la construcción.
Escribir un blog sobre un plugin de Maven
Investigar y documentar el uso de un plugin específico de Maven para profundizar en su funcionalidad y compartir el conocimiento con otros.
Show steps
  • Elegir un plugin de Maven que sea interesante y relevante.
  • Investigar la funcionalidad del plugin y cómo se utiliza.
  • Escribir un artículo de blog que explique el plugin y proporcione ejemplos de uso.
  • Publicar el artículo en un blog personal o en una plataforma de publicación.
Crear un arquetipo personalizado de Maven
Desarrollar un arquetipo personalizado para generar proyectos Maven con una estructura y configuración predefinidas.
Show steps
  • Definir la estructura y configuración del arquetipo.
  • Crear los archivos necesarios para el arquetipo.
  • Instalar el arquetipo en el repositorio local de Maven.
  • Utilizar el arquetipo para generar un nuevo proyecto.
  • Documentar el uso del arquetipo.
Contribuir a un proyecto de código abierto que use Maven
Ganar experiencia práctica trabajando con Maven en un entorno de desarrollo real y colaborar con otros desarrolladores.
Show steps
  • Buscar un proyecto de código abierto que utilice Maven y que sea de interés.
  • Familiarizarse con el código base y el proceso de construcción del proyecto.
  • Identificar un problema o una mejora que se pueda implementar.
  • Implementar la solución y enviar una solicitud de extracción (pull request).
  • Participar en la revisión del código y realizar los cambios necesarios.

Career center

Learners who complete Apache Maven: Construcción de proyectos de cero a avanzado will develop knowledge and skills that may be useful to these careers:
Desarrollador de software
El Desarrollador de Software escribe, prueba y mantiene el código de las aplicaciones de software. Este curso de Apache Maven es muy relevante para el desarrollador, ya que Maven es una herramienta de automatización de compilaciones ampliamente utilizada en la industria del desarrollo de software. A través del curso, el profesional aprende a construir proyectos de manera uniforme, gestionar dependencias y automatizar tareas de compilación, lo que mejora significativamente la productividad y la calidad del código. Conocer los ciclos de vida de Maven y cómo trabajar con los plugins y la documentación de proyectos proporciona a los desarrolladores las habilidades necesarias para construir aplicaciones complejas de manera eficiente. Por ejemplo, a través de este profesionista puede crear proyectos WAR y EAR.
Ingeniero de Construcción
Un Ingeniero de Construcción supervisa y gestiona proyectos de construcción, asegurando que se completen a tiempo y dentro del presupuesto. Este curso de Apache Maven resulta valioso porque muchos proyectos de construcción de software utilizan Maven para la automatización de compilaciones y la gestión de dependencias. Al comprender cómo construir proyectos de manera uniforme y seguir las mejores prácticas de desarrollo con Maven, el Ingeniero de Construcción puede optimizar los procesos de desarrollo de software, mejorar la eficiencia del equipo y garantizar la calidad del producto final. El curso proporciona una base sólida en la creación y construcción de proyectos, la gestión del ciclo de vida, los plugins, la documentación y los proyectos multimódulo, habilidades esenciales para cualquier profesional involucrado en la construcción y el desarrollo de software.
Ingeniero de Integración Continua
Un Ingeniero de Integración Continua se dedica a automatizar y optimizar el proceso de integración de código en un proyecto de software. Este curso de Apache Maven es fundamental porque Maven es una herramienta clave para gestionar dependencias y automatizar la construcción en entornos de integración continua. Al aprender a trabajar con Maven, el ingeniero puede configurar pipelines de CI/CD eficientes, gestionar dependencias de manera efectiva y asegurar que el código se construya y se pruebe de manera consistente. El curso en cuestión profundiza en la compilación con Maven.
Ingeniero de Automatización
El Ingeniero de Automatización diseña, desarrolla e implementa soluciones de automatización para mejorar la eficiencia y la fiabilidad de los procesos. Este curso sobre Apache Maven ayuda a los ingenieros de automatización a comprender y aplicar las herramientas de automatización de compilaciones en el desarrollo de software. Los ingenieros de automatización a menudo trabajan en entornos donde la gestión de dependencias y la automatización de la construcción son cruciales para el éxito del proyecto. La capacidad de utilizar Maven para construir proyectos de manera uniforme, gestionar dependencias y documentar proyectos de manera efectiva aumenta la productividad y reduce los errores en el ciclo de desarrollo. Con este curso, el ingeniero puede crear proyectos personalizados que cumplan con los requerimientos al usar los "plugins" y funciones del lenguaje.
Ingeniero de DevOps
Un Ingeniero de DevOps se centra en optimizar el ciclo de vida del desarrollo de software mediante la automatización y la mejora de la colaboración entre los equipos de desarrollo y operaciones. Este curso de Apache Maven ofrece conocimientos valiosos sobre la automatización de compilaciones y la gestión de dependencias, que son fundamentales en la práctica de DevOps. Al comprender cómo utilizar Maven para construir proyectos de manera uniforme, gestionar dependencias y automatizar tareas de compilación, el Ingeniero de DevOps puede mejorar la velocidad, la eficiencia y la fiabilidad de la entrega de software. Este aprendizaje le permite, por ejemplo, utilizar los "plugins" de Maven para tareas esenciales.
Ingeniero de datos
Un Ingeniero de Datos diseña, construye y gestiona la infraestructura de datos de una organización, asegurando que los datos estén disponibles y sean accesibles para su análisis. Este curso de Apache Maven es valioso para el ingeniero porque Maven es una herramienta popular utilizada en proyectos de procesamiento de datos, especialmente con tecnologías como Scala y Apache Spark. Aprender a trabajar con Maven facilita la construcción y el manejo de proyectos de datos, permitiendo al ingeniero automatizar tareas de compilación, gestionar dependencias y seguir las mejores prácticas de desarrollo. Este curso ofrece una base sólida en la creación y construcción de proyectos, la gestión del ciclo de vida y la documentación, habilidades esenciales para cualquier ingeniero de datos que trabaje con grandes volúmenes de información. El curso enseña a compilar proyectos de manera ágil así como usar los "plugins" que permiten tareas de compilación esenciales.
Arquitecto de software
El Arquitecto de Software diseña la estructura y la arquitectura de los sistemas de software, asegurando que sean escalables, mantenibles y eficientes. Este curso de Apache Maven es valioso porque proporciona una comprensión profunda de cómo construir y gestionar proyectos de software utilizando una herramienta de automatización de compilaciones estándar de la industria. Un Arquitecto de Software debe tener una visión completa del proceso de desarrollo, incluyendo la gestión de dependencias, la automatización de compilaciones y la documentación del proyecto. Al dominar Maven, el arquitecto puede garantizar que los proyectos se construyan de manera uniforme y sigan las mejores prácticas de desarrollo, facilitando la colaboración y la mantenibilidad a largo plazo. Esto puede ayudar a crear proyectos WAR y EAR.
Líder técnico
El Líder Técnico guía y supervisa a los equipos de desarrollo de software, proporcionando dirección técnica y asegurando que los proyectos se entreguen con éxito. Este curso de Apache Maven puede ayudar a los líderes técnicos a comprender mejor cómo funciona el proceso de construcción y automatización de proyectos. Al comprender cómo construir proyectos de manera uniforme, gestionar dependencias y automatizar tareas de compilación, el Líder Técnico puede mejorar la eficiencia, la colaboración y la calidad del trabajo de su equipo. El curso enseña a crear y construir proyectos con Maven, gestionar el ciclo de vida y documentar proyectos, habilidades esenciales para un líder técnico.
Ingeniero de pruebas
Un Ingeniero de Pruebas se encarga de diseñar y ejecutar pruebas para asegurar la calidad del software. Este curso de Apache Maven es útil porque Maven facilita la gestión de dependencias y la automatización de la construcción, lo que es crucial para configurar entornos de prueba consistentes y reproducibles. Al aprender a trabajar con Maven, el ingeniero puede gestionar dependencias de manera eficiente, integrar pruebas automatizadas en el proceso de construcción y generar informes de pruebas detallados. El curso profundiza en los "plugins" de Maven, lo que puede aumentar las pruebas de software en una organización.
Analista de Construcción
Un Analista de Construcción se ocupa de analizar y optimizar los procesos de construcción en proyectos de ingeniería. Este curso de Apache Maven es relevante porque proporciona una comprensión profunda de cómo automatizar y gestionar la construcción de proyectos de software. Al comprender cómo utilizar Maven para estandarizar los procesos de construcción, gestionar dependencias y generar documentación, el Analista puede identificar áreas de mejora y optimizar la eficiencia del equipo de desarrollo. Los ciclos de vida que se ven dentro del curso pueden complementar el trabajo de este analista.
Consultor de Software
El consultor de software asesora a las empresas sobre la implementación de soluciones de software. Este curso de Apache Maven es útil porque proporciona una comprensión profunda de las herramientas y prácticas para la construcción y gestión de proyectos de software. Aprender cómo utilizar Maven para automatizar la construcción, gestionar dependencias y generar documentación, el consultor puede ofrecer soluciones más eficaces y eficientes a sus clientes.
Analista de Calidad de Software
Un Analista de Calidad de Software se dedica a asegurar que los productos de software cumplan con los estándares de calidad definidos. Este curso de Apache Maven le puede auxiliar porque Maven facilita la gestión de dependencias y la automatización de la construcción, lo que es crucial en la configuración de entornos de prueba y la integración de pruebas automatizadas. Al aprender a trabajar con Maven, el analista puede asegurar que el software se construya de manera consistente y que las pruebas se ejecuten de manera eficiente. Comprender el uso de los "plugins" facilita este proceso.
Coordinador de Proyectos
El Coordinador de Proyectos asiste en la planificación, ejecución y seguimiento de proyectos de software. Este curso de Apache Maven puede resultar útil porque proporciona una visión general de cómo se construyen y gestionan los proyectos de software. Al comprender cómo utilizar Maven para gestionar dependencias, automatizar tareas de compilación y generar documentación, el coordinador puede mejorar la comunicación y la colaboración entre los miembros del equipo, así como asegurar que el proyecto se entregue a tiempo y dentro del presupuesto. También puede utilizar los "plugins" de los que habla el curso.
Administrador de Sistemas
Un Administrador de Sistemas se ocupa de mantener y gestionar la infraestructura tecnológica de una organización. Este curso de Apache Maven puede ser útil porque Maven se utiliza para construir y gestionar aplicaciones que se ejecutan en los sistemas de la organización. Conocer cómo funciona Maven, el administrador puede comprender mejor cómo se implementan y gestionan las aplicaciones de software, lo que facilita la resolución de problemas y la optimización del rendimiento del sistema. Aprender sobre los "plugins" puede ayudar a este profesionista.
Gerente de Portafolio de Proyectos
Un Gerente de Portafolio de Proyectos supervisa y gestiona múltiples proyectos de software, asegurando que se alineen con la estrategia de la organización. Este curso de Apache Maven puede ser útil porque proporciona una comprensión general de cómo se construyen y gestionan los proyectos de software. Al comprender cómo utilizar Maven para estandarizar los procesos de construcción, gestionar dependencias y generar documentación, el gerente puede mejorar la eficiencia y la calidad de los proyectos en su portafolio. Aprender sobre los "plugins" y la documentación hace más fácil su labor.

Reading list

We've selected one books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Apache Maven: Construcción de proyectos de cero a avanzado.
Este libro es una referencia completa sobre Apache Maven. Cubre todos los aspectos de Maven, desde la instalación y configuración hasta la creación de proyectos complejos y la gestión de dependencias. Es útil como referencia durante el curso y como guía para proyectos futuros.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser