Build Instructions for GDAL/OGR In Java (Windows)

Note that OSGeo4W includes a gdal-java package and a Java runtime making it fairly easily to build local Java applications using GDAL. The following instructions describe how to build the Java bindings from scratch.

Install SWIG

Install an appropriate version of SWIG for windows. GDAL/OGR's Java bindings correct operation are fairly sensitive to the version of SWIG used. Version 1.3.39 is appropriate for GDAL/OGR 1.8.0. A Windows version with a pre-built executable is available, so compiling isn't necessary.

OSGeo4W has a "swig" package which will install a suitable version of swig in C:\OSGeo4W\apps\swigwin.

Install the latest version of the Java SE Development Kit

Make sure you are getting the "JDK", not just the runtime environment. The "SE" (standard edition?) is fine, no need for "EE" (enterprise edition).

Install Apache Ant

Binary distributions are available, so compiling isn't necessary.

Download and Configure GDAL

Follow normal steps to configure GDAL by modifying <gdal-dir>\nmake.opt. In addition to normal steps ensure that the SWIG, JAVA and ANT related definitions are set appropriately. Perhaps something like:

JAVA_HOME = "C:\Program Files\Java\jdk1.6.0_23"
JAVA_INCLUDE=-I$(JAVA_HOME)\include -I$(JAVA_HOME)\include\win32



Compile GDAL

See BuildingOnWindows for details on configuring and building GDAL on windows.

nmake /f

Build Java Bindings

This step will run SWIG to generate the Java bindings (it will use nmake/cl.exe to build the C++ side of the Java bindings and ANT/javac to compile the java side of the bindings).

cd swig
nmake /f java

The result, in the gdal/swig/java directory, should be the following files: gdal.jar, gdalconstjni.dll, gdaljni.dll, ogrjni.dll and osrjni.dll.

Test Sample Application

First, ensure that java.exe and javac.exe are available in your path and that any DLLs on which GDAL depends are in your path.

cd swig\java\apps
copy ..\..\..\*.dll
copy ..\*.dll
javac -classpath ..\gdal.jar;.
java -classpath ..\gdal.jar;. gdalinfo

You should get a usage message, or add a filename to the end of the last command to see a gdalinfo style report on the file.

Install components

The jni dll's can be installed somewhere appropriate, often wherever the main GDAL DLL (ie gdal18.dll) goes.

The gdal.jar will need to be in the class path.


It may be desirable to modify the CLASSPATH globally. This can be done like this:

  1. In the Control Panel, open up System. Switch to the Advanced tab and click on Environmental Variables.
  1. In the System Variables pane, look for CLASSPATH. If it exists, click on "Edit" and ensure that "." and "..\gdal.jar" are included. Individual items are separated by colons. If CLASSPATH does not exist, click on "New" and add CLASSPATH with the same two locations.
Last modified 11 years ago Last modified on Apr 12, 2011, 5:22:02 AM
Note: See TracWiki for help on using the wiki.