[Gvsig_desarrolladores] Dependencia geoapi no encontrada

Fernando González fergonco en gmail.com
Mar Abr 12 09:19:13 CEST 2011


Vaya, [1] me dice que soy sólo yo, pero se ha reportado recientemente
un problema similar[2] en la lista de gdal.

Se arregla poniendo el mirror (download2.osgeo.org) en la solución de César:

		<repository>
			<id>osgeo</id>
			<name>Open Source Geospatial Foundation</name>
			<url>http://download2.osgeo.org/webdav/geotools</url>
			<releases>
				<enabled>true</enabled>
				<updatePolicy>never</updatePolicy>
				<checksumPolicy>warn</checksumPolicy>
			</releases>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</repository>




[1] http://www.downforeveryoneorjustme.com/download.osgeo.org
[2] http://lists.osgeo.org/pipermail/gdal-dev/2011-March/028138.html

2011/4/12 Fernando González <fergonco en gmail.com>:
> Hola César.
>
> Desde aquí, no puedo conectar a download.osgeo.org.
>
> ping download.osgeo.org
> PING download.osgeo.org (198.202.74.218) 56(84) bytes of data.
> From 10.255.4.10 icmp_seq=1 Destination Host Unreachable
>
> así que ya está el misterio resuelto. Supongo que será algo
> circunstancial, pero dura ya desde ayer.
>
> Y ahora voy a por el resto del correo...
>
>
>
> 2011/4/11 Cèsar Ordiñana <cordinyana en gvsig.com>:
>> El 11/04/11 14:39, Fernando González escribió:
>>> Hola, necesito leer un dxf en un proyecto y he pensado en usar las
>>> librerías de gvSIG. Me he creado un pom[3] pero no sé si estoy tirando
>>> del repositorio correcto[1] y de las versiones correctas de gvSIG[2].
>>>
>>> El caso es que me fallan estas dependencias:
>>>
>>>       1) org.test:dxftest:jar:1.0-SNAPSHOT
>>>       2) org.gvsig:org.gvsig.dxf:jar:2.0-SNAPSHOT
>>>       3) org.gvsig:org.gvsig.projection:jar:2.0-SNAPSHOT
>>>       4) org.opengis:geoapi:jar:2.0
>>>
>>>       1) org.test:dxftest:jar:1.0-SNAPSHOT
>>>       2) org.gvsig:org.gvsig.dxf:jar:2.0-SNAPSHOT
>>>       3) org.gvsig:org.gvsig.projection:jar:2.0-SNAPSHOT
>>>       4) javax.media:jai_core:jar:1.1.3
>>>
>>>       1) org.test:dxftest:jar:1.0-SNAPSHOT
>>>       2) org.gvsig:org.gvsig.dxf:jar:2.0-SNAPSHOT
>>>       3) org.gvsig:org.gvsig.projection:jar:2.0-SNAPSHOT
>>>       4) javax.media:jai_codec:jar:1.1.3
>>>
>>>
>>> ¿Están mal configuradas las dependencias o el problema es mío?
>>
>> Hola Fernando,
>>
>> En el site del proyecto projection puedes ver sus dependencias y de qué
>> repositorios salen (apartado Dependency Repository Locations):
>>
>> http://gvsig-desktop.forge.osor.eu/downloads/pub/projects/gvSIG-desktop/docs/reference/org.gvsig.projection/2.0.0/dependencies.html
>>
>> Justo esas dependencias que no encuentra (geoapi, jai_core y jai_codec)
>> están en el repositorio maven de osgeo. Entiendo que debería haberlas
>> encontrado también, ya que las dependencias llevan también el
>> repositorio. En cualquier caso creo que se arreglará añadiendo esta
>> entrada dentro de <repositories>:
>>
>> <repository>
>> <id>osgeo</id>
>> <name>Open Source Geospatial Foundation</name>
>> <url>http://download.osgeo.org/webdav/geotools</url>
>> <releases>
>> <enabled>true</enabled>
>> <updatePolicy>never</updatePolicy>
>> <checksumPolicy>warn</checksumPolicy>
>> </releases>
>> <snapshots>
>> <enabled>false</enabled>
>> </snapshots>
>> </repository>
>>
>> Por otro lado, en ejecución no te funcionará tal cuál lo tienes, ya que
>> la librería de DXF depende sólo del API de proyecciones en compilación,
>> necesitarás incluir una implementación de proyecciones en ejecución.
>>
>> Para simplificar este tipo de cosas de cara a tests unitarios o clases
>> de pruebas, hemos preparado un pom.xml que incluye todas las librerías
>> de gvSIG necesarias para ejecución. Se puede usar de dos formas
>> complementarias, según lo que queramos hacer:
>>
>> - Queremos usar las mismas versiones que se usan en gvSIG, tanto de las
>> librerías de gvSIG como de sus dependencias.
>>
>>   Incluimos lo siguiente en nuestro pom.xml:
>>
>> <dependencyManagement>
>> <dependencies>
>> <dependency>
>> <groupId>org.gvsig</groupId>
>> <artifactId>org.gvsig.core.maven.dependencies</artifactId>
>> <version>2.0.1-SNAPSHOT</version>
>> <type>pom</type>
>> <scope>import</scope>
>> </dependency>
>> </dependencies>
>> </dependencyManagement>
>>
>>   Esto hace que todo el apartado <dependencyManagement> que hay en
>> org.gvsig.core.maven.dependencies se incluya dentro del nuestro. Para el
>> que no lo sepa, el apartado dependencyManagement sirve para fijar las
>> versiones de las dependencias, por lo que ya no hace falta definirlas
>> dentro del apartado <dependency>.
>>
>>   Si haces lo anterior, al incluir la dependencia con DXF no tendrás
>> que poner la versión. Quedará tal que así:
>>
>>        <dependencies>
>>                ...
>>                <dependency>
>>                        <groupId>org.gvsig</groupId>
>>                        <artifactId>org.gvsig.dxf</artifactId>
>>                        <scope>compile</scope>
>>                </dependency>
>>
>>        </dependencies>
>>
>>
>>   Verás que he añadido también: <scope>compile</scope>. Esto es porque
>> el pom de org.gvsig.maven.core.dependencies tiene todas las dependencias
>> configuradas para ejecución, si las necesitas de compilación hay que
>> indicarlo
>>
>>
>> - Queremos tener todas las dependencias de ejecución necesarias para
>> nuestro proyecto:
>>
>>   Para ello incluiremos la siguiente dependencia dentro del apartado
>> <dependencies>:
>>
>> <dependency>
>> <groupId>org.gvsig</groupId>
>> <artifactId>org.gvsig.core.maven.dependencies</artifactId>
>> <version>2.0.1-SNAPSHOT</version>
>> <type>pom</type>
>> <scope>runtime</scope>
>> </dependency>
>>
>>   Si es sólo para tests unitarios se puede cambiar el scope runtime por
>> test.
>>
>>   Con esto heredaremos todas las dependencias de ejecución, incluyendo
>> todas las librerías del core y sus dependencias. La primera vez, sino
>> has compilado gvsig por tu cuenta, se bajará un montón de librerías,
>> pero te despreocupas del tema.
>>
>> Si tienes una aplicación que usa libDXF, para su ejecución en producción
>> si que te recomiendo que revises qué dependencias específicas necesitas
>> para incluirlas individualmente. Además hay casos en los que podrás
>> elegir la implementación. Por ejemplo, del api de proyecciones hay
>> varias implementaciones disponibles, ej: la de org.gvsig.projection
>> mismo o la de org.gvsig.crs.
>>
>> Saludos,
>>
>> --
>> Cèsar Ordiñana Navarro
>> gvSIG software architect
>> DiSiD Technologies (http://www.disid.com)
>>
>> _______________________________________________
>> gvSIG_desarrolladores mailing list
>> gvSIG_desarrolladores en listserv.gva.es
>> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>>
>


Más información sobre la lista de distribución gvSIG_desarrolladores