Personal tools
gvSIG Desktop
gvSIG Desktop

Cached time 11/22/13 07:45:41 Clear cache and reload

 
Document Actions

Las dependencias entre los distintos proyectos

by Joaquin Jose del Cerro Murciano last modified 2012-03-12 15:23
Primero veamos qué dependencias nos ha dejado puestas el asistente en el proyecto *org.gvsig.visor*.
Si miramos el fichero *pom.xml*, de ese proyecto, en la sección *dependencyManagement* observaremos
la siguiente entrada:

.. code-block:: xml

  
    
      org.gvsig
      org.gvsig.core.maven.dependencies
      2.0.1-SNAPSHOT
      pom
      import
    
  

Esto importa las dependencias de las distintas librerías de gvSIG, de forma que para todas
las librerías base de gvSIG no tengamos que preocuparnos por la versión de cada una de ellas.
Como esta importación está realizada en la sección *dependencyManagement*, solo es a título
informativo, es decir, no fija una dependencia con esas librerías.

Si vemos ahora la sección *dependencies*, encontraremos la entrada:

.. code-block:: xml

  
    org.gvsig
    org.gvsig.core.maven.dependencies
    2.0.1-SNAPSHOT
    pom
    test
  

Con esto se fijarán dependencias de ejecución y test para todas las librerías base de
gvSIG, así no tendremos que preocuparnos por que estén cargadas las implementaciones de
todos los APIs de gvSIG cuando se ejecuten los test de nuestros proyectos.

Además de nos encontraremos con:

.. code-block:: xml

  
    org.gvsig
    org.gvsig.tools.lib
    jar
    compile
  
  
    org.gvsig
    org.gvsig.tools.lib
    test-jar
    test
  
  
    org.gvsig
    org.gvsig.fmap.geometry
    compile
  
  
    org.gvsig
    org.gvsig.fmap.dal
    compile
  
  
    org.gvsig
    org.gvsig.metadata.lib.basic.api
    compile
  

Ahí se fijan dependencias de compilación con las principales librerías de gvSIG, y que normalmente
precisaremos en casi cualquier proyecto que vayamos a hacer y trabaje con gvSIG.

Esta configuración de dependencias la encontramos en el proyecto principal. Veamos ahora 
qué dependencias precisaremos en los subproyectos.

- *org.gvsig.visor.lib/pom.xml* Este no aporta ninguna declaración de dependencias
  adicional a la que define el proyecto padre que ya hemos comentado.
  
- *org.gvsig.visor.lib.api/pom.xml* Tampoco aporta nuevas dependencias.

- *org.gvsig.visor.lib.impl/pom.xml*. No aporta nuevas dependencias, pero deberemos
  añadir en este proyecto las dependencias con el proyecto del API, tanto para compilación
  como para ejecución de tests.
  
- *org.gvsig.visor.swing/pom.xml* que aunque no aporta nuevas dependencias, define 
  como dependencias los proyectos del *lib.api*.
  
- *org.gvsig.visor.swing.api/pom.xml* que no aporta nuevas dependencias.

- *org.gvsig.visor.swing.imple/pom.xml* que aunque no aporta nuevas dependencias, deberá 
  declarar sus dependencias con el API de swing para test y compilación.
  
  ..  warning:: También tiene una dependencia con la implementación para compilación
      que no creo que debiese tener, hay que repasarlo.
      
- y por último *org.gvsig.visor.main/pom.xml*. Este declarará las dependencias con el 
  API de nuestras librerías para compilación y con la implementación para ejecución. Y además
  añade dependencias de compilación con las librerías de gvSIG que utiliza, estas son:
  
  .. code-block:: xml

    
      org.gvsig
      org.gvsig.fmap.control
      compile
    
    
      org.gvsig
      org.gvsig.fmap.dal
      compile
    
    
      org.gvsig
      org.gvsig.fmap.geometry
      compile
    
    
      org.gvsig
      org.gvsig.fmap.mapcontext
      compile
    
  

View source document

View source document Get permanent link


Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: