[Gvsig_desarrolladores] Ayuda con GDAL

Juan DYB jdyb04jdyb en gmail.com
Sab Nov 24 02:13:39 CET 2012


Hola a todos:

Se que no tiene mucho que ver con GvSIG pero estoy intentando buscar ayuda para usar GDAL en java. No encuentro casi nada de documentación y estoy un poco desesperado.

Se trata de que quiero leer un fichero ECW y para ello necesito GDAL con Geotools (o eso he llegado a entender)

Estoy trabajando con MAVEN y desarrollo bajo mac y bajo Windows.

Lo he intentado en ambos sistemas y no he conseguido nada.

Este es el código que estoy usando. He puesto en negrita lo que es importante en lo que se refiere a GDAL

File ecw = new File (ruta);
ECWReader reader = new ECWReader(ecw);
GridCoverage2D coverage = reader.read(null);

Les dejo parte de mi pom.xml

<properties>
        <gdal.path>/Library/Frameworks/GDAL.framework/Programs/</gdal.path>
</properties>

<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifest>
                            <mainClass>org.geo_gdal.App</mainClass>
                            <addClasspath>true</addClasspath>
                        </manifest>
                        <manifestEntries>
                            <Class-Path>${gdal.path}</Class-Path>
                        </manifestEntries>
                    </archive>
                </configuration>
            </plugin>
        </plugins>
    </build>
    
    <pluginRepositories>
      <pluginRepository>
         <id>freehep-maven</id>
         <name>Maven FreeHEP</name>
         <url>http://java.freehep.org/maven2</url>
      </pluginRepository>
   </pluginRepositories>
    <repositories>
        <repository>
            <id>maven2-repository.dev.java.net</id>
            <name>Java.net repository</name>
            <url>http://download.java.net/maven/2/</url>
        </repository>
        <repository>
            <id>osgeo</id>
            <name>Open Source Geospatial Foundation Repository</name>
            <url>http://download.osgeo.org/webdav/geotools/</url>
        </repository>
        <repository>
            <id>geosolutions</id>
            <name>GeoSolutions libraries repository</name>
            <url>http://mvn.geo-solutions.it/</url>
        </repository>
    </repositories>

    <dependencies>
        <dependency>
            <groupId>org.swinglabs</groupId>
            <artifactId>swing-layout</artifactId>
            <version>1.0.3</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.10</version>
            <scope>test</scope>
            <type>jar</type>
        </dependency>
        <dependency>
            <groupId>org.geotools</groupId>
            <artifactId>gt-geotiff</artifactId>
            <version>${geotools.version}</version>
        </dependency>
        <dependency>
            <groupId>org.geotools</groupId>
            <artifactId>gt-api</artifactId>
            <version>${geotools.version}</version>
        </dependency>
        <dependency>
            <groupId>org.geotools</groupId>
            <artifactId>gt-epsg-hsql</artifactId>
            <version>${geotools.version}</version>
        </dependency>
        <dependency>
            <groupId>org.geotools</groupId>
            <artifactId>gt-imageio-ext-gdal</artifactId>
            <version>${geotools.version}</version>
        </dependency>
        <dependency>
            <groupId>it.geosolutions.imageio-ext</groupId>
            <artifactId>imageio-ext-gdal-bindings</artifactId>
            <version>1.7</version>
        </dependency>
    </dependencies>


En Windows he instalado los paquetes de esta web que están para win x64, tanto el core como el plugin eco.
http://www.gisinternals.com/sdk/

En mac he hecho lo mismo pero desde esta página
http://www.kyngchaos.com/software:frameworks

El error que obtengo es el siguiente

nov 24, 2012 1:05:48 AM it.geosolutions.imageio.gdalframework.GDALUtilities loadGDAL
WARNING: Failed to load the GDAL native libs. This is not a problem unless you need to use the GDAL plugins: they won't be enabled.
java.lang.UnsatisfiedLinkError: no gdaljni in java.library.path
Exception in thread "main" java.lang.IllegalStateException: GDAL native libraries are not available.
	at it.geosolutions.imageio.gdalframework.GDALImageReader.setInput(GDALImageReader.java:636)
	at it.geosolutions.imageio.plugins.ecw.ECWImageReader.setInput(ECWImageReader.java:60)
	at javax.imageio.ImageReader.setInput(ImageReader.java:380)
	at org.geotools.coverageio.BaseGridCoverage2DReader.<init>(BaseGridCoverage2DReader.java:172)
	at org.geotools.coverageio.gdal.BaseGDALGridCoverage2DReader.<init>(BaseGDALGridCoverage2DReader.java:84)
	at org.geotools.coverageio.gdal.ecw.ECWReader.<init>(ECWReader.java:68)
	at org.geotools.coverageio.gdal.ecw.ECWReader.<init>(ECWReader.java:53)


He probado con la opción de la JVM al lanzar el jar pero lo mismo, el mismo error, no hay manera.

-Djava.library.path="C:/Program Files/GDAL"


Si alguien sabe como hacerlo funcionar en Mac y/o en Windows le agradecería enormemente que me lo dijera paso por paso porque estoy desesperado con ello, llevo cerca de una semana detrás de ello y no hay manera. Muchísimas gracias a todos de antemano.


--
Un Saludo,

Juan

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://listserv.gva.es/pipermail/gvsig_desarrolladores/attachments/20121124/33139ae8/attachment.htm 


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