English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriales de Maven

Este tutorial ha sido preparado para principiantes para ayudarles a entender las funciones básicas de la herramienta Maven. Después de completar este tutorial, descubrirás que tienes un nivel profesional medio en el uso de Apache Maven, desde aquí puedes pasar a un nivel más alto.

Maven se traduce como "experto", "conocedor", es un proyecto de código abierto desarrollado completamente en Java bajo Apache. Basado en el concepto de modelo de objeto de proyecto (abreviado: POM), Maven utiliza un fragmento de información central para gestionar los pasos de construcción, informes y documentación del proyecto.

Maven es una herramienta de gestión de proyectos que puede construir y gestionar proyectos Java.

Maven también se puede usar para construir y gestionar varios tipos de proyectos, como proyectos escritos en C#, Ruby, Scala y otros lenguajes. Maven fue un subproyecto de Jakarta, y ahora es un proyecto Apache independiente bajo la fundación Apache.

Conocimientos que necesitas entender antes de leer este tutorial

Este tutorial está principalmente dirigido a principiantes, para ayudarles a aprender las funciones básicas de la herramienta Maven. Después de completar el aprendizaje de este tutorial, tu conocimiento profesional de Apache Maven alcanzará un nivel medio, luego puedes aprender conocimientos más avanzados.

Para leer este tutorial, necesitarás lo siguiente como base:Base de Java.

Funcionalidades de Maven

Maven puede ayudar a los desarrolladores a completar lo siguiente:

  • Construcción

  • Generación de documentos

  • Informes

  • Dependencias

  • SCMs

  • Publicación

  • Distribución

  • Listas de correo

Configuración de convenio

Maven recomienda usar una estructura de directorios estándar común, Maven utiliza el principio de convenio sobre configuración, todos deben seguir al máximo tal estructura de directorios. A continuación se muestra:

DirectorioObjetivo
${basedir}Almacena pom.xml y todos los subdirectorios
${basedir}/src/main/javaCódigo fuente java del proyecto
${basedir}/src/main/resourcesRecursos del proyecto, por ejemplo, archivos de property, springmvc.xml
${basedir}/src/test/javaClases de prueba del proyecto, por ejemplo, código JUnit
${basedir}/src/test/resourcesRecursos para pruebas
${basedir}/src/main/webapp/WEB-INFDirectorio de archivos de aplicación web, información del proyecto web, como almacenamiento de web.xml, imágenes locales, vistas de páginas JSP
${basedir}/targetDirectorio de salida de paquete
${basedir}/target/classesDirectorio de salida de compilación
${basedir}/target/test-classesDirectorio de salida de compilación de pruebas
Test.javaMaven solo ejecutará automáticamente las clases de prueba que cumplan con la regla de nombre.
~/.m2/repositoryLa ubicación predeterminada del directorio del repositorio local de Maven

Características de Maven

  • La configuración del proyecto sigue reglas unificadas.

  • Compartida en cualquier proyecto.

  • La gestión de dependencias incluye actualizaciones automáticas.

  • Una biblioteca vasta y en constante crecimiento.

  • Expandible, capaz de escribir plugins en Java o lenguajes de script fácilmente.

  • Acceso instantáneo a nuevas funciones con poco o sin configuración adicional.

  • Construcción basada en modelo − Maven puede construir cualquier cantidad de proyectos en tipos de salida predefinidos, como JAR, WAR o distribución basada en metadatos del proyecto, sin necesidad de ejecutar scripts en la mayoría de los casos.

  • Sitio web consistente de información de proyecto − Usando los mismos metadatos que el proceso de construcción, Maven puede generar un sitio web o PDF, incluyendo cualquier documento que desee agregar, y agregarlo a los informes estándar sobre el estado de desarrollo del proyecto.

  • Gestión de publicaciones y publicación de outputs individuales − Maven no necesitará configuración adicional para integrarse con sistemas de gestión de código fuente (como Subversion o Git) y puede gestionar la publicación de proyectos basándose en una etiqueta. También puede publicar sus publicaciones en ubicaciones de distribución para que otros proyectos las utilicen. Maven puede publicar outputs individuales, como JAR, que contienen otros dependencias y archivos de archivo, o como código fuente de publicación.

  • Compatibilidad con versiones anteriores − Puede migrar fácilmente desde múltiples módulos de Maven de versiones anteriores 3 。

  • Cuando un subproyecto utiliza dependencias del proyecto padre, en circunstancias normales, el subproyecto debe heredar las dependencias del proyecto padre, sin necesidad de usar el número de versión,

  • Construcción paralela − La velocidad de compilación puede mejorar generalmente20 - 50 %。

  • Mejor informe de errores − Mejora del informe de errores, que le proporciona enlaces a la página wiki de Maven, donde puede hacer clic para ver la descripción completa del error.

    Apache Maven es una herramienta de gestión de proyectos y comprensión de software. Basado en el concepto del modelo de objeto de proyecto (POM), Maven puede gestionar la construcción, informes y documentación de proyectos desde un punto central. Al usar Maven, podemos construir y gestionar cualquier proyecto basado en Java. Este tutorial le enseñará cómo usar Maven en sus tareas diarias de desarrollo de proyectos en Java.