Saltar al contenido

Nomenclatura de artefactos e ID de grupo de Maven

Después de consultar expertos en el tema, programadores de varias áreas y profesores hemos dado con la respuesta al problema y la compartimos en este post.

Solución:

La rareza es muy subjetiva, solo sugiero seguir la recomendación oficial:

Guía de convenciones de nomenclatura en groupId, artefactoId y versión

  • groupId identificará su proyecto de manera única en todos los proyectos, por lo que debemos aplicar un esquema de nomenclatura. Tiene que seguir las reglas de nombre del paquete, lo que significa que tiene que ser al menos como un nombre de dominio que controlas, y puedes crear tantos subgrupos como quieras. Consulte Más información sobre nombres de paquetes.

    p.ej. org.apache.maven, org.apache.commons

    Una buena manera de determinar la granularidad de groupId es usar la estructura del proyecto. Es decir, si el proyecto actual es un proyecto de varios módulos, debe agregar un nuevo identificador al ID de grupo principal.

    p.ej. org.apache.maven, org.apache.maven.plugins,
    org.apache.maven.reporting

  • artifactId es el nombre del jar sin versión. Si lo creaste, puedes elegir el nombre que quieras con letras minúsculas y sin símbolos extraños. Si se trata de un tarro de terceros, debe tomar el nombre del tarro tal como se distribuye.

    p.ej. maven, commons-math

  • version si lo distribuye, puede elegir cualquier versión típica con números y puntos (1.0, 1.1, 1.0.1, …). No use fechas, ya que generalmente se asocian con compilaciones SNAPSHOT (nocturnas). Si se trata de un artefacto de terceros, debe usar su número de versión, sea cual sea, y por extraño que parezca.

    p.ej. 2.0, 2.0.1, 1.3.1

Su convención parece ser razonable. Si estuviera buscando su marco en el repositorio de Maven, buscaría awesome-inhouse-framework-x.y.jar en com.mycompany.awesomeinhouseframework directorio de grupos. Y lo encontraría allí de acuerdo con su convención.

Dos reglas simples funcionan para mí:

  • paquetes de dominio inverso para groupId (ya que son bastante únicos) con todas las restricciones relacionadas con los nombres de los paquetes de Java
  • nombre del proyecto como artefactoId (teniendo en cuenta que debe ser amigable con el nombre del jar, es decir, no contener caracteres que tal vez no sean válidos para un nombre de archivo o que simplemente se vean extraños)

Considere seguir en cuanto a la construcción básica primero Experto solicitud:

groupId

  • com.nombredeempresa.proyecto

artifactId

  • proyecto

version

  • 0.0.1

Reseñas y puntuaciones del post

Finalizando este artículo puedes encontrar las explicaciones de otros gestores de proyectos, tú aún eres capaz insertar el tuyo si te apetece.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *