Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

uDig parent project containing all core components. More plugins can be found in community repos: http://github.com/uDig-Community

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 bin
Octocat-spinner-32 deploy
Octocat-spinner-32 docs
Octocat-spinner-32 extras
Octocat-spinner-32 features
Octocat-spinner-32 libs
Octocat-spinner-32 plugins
Octocat-spinner-32 targets
Octocat-spinner-32 .gitignore
Octocat-spinner-32 README.textile
Octocat-spinner-32 pom-libs.xml
Octocat-spinner-32 pom.xml
README.textile

uDig Overview

The User-friendly Desktop Internet GIS (uDig) is an open source (EPL + BSD) desktop application framework, built with the Eclipse Rich Client (RCP) technology.

  • uDig can be used as a stand-alone application
  • uDig can be extended with RCP “plug-ins”
  • uDig can be used as a plug-in in an existing RCP application

uDig is an open project, with developers from multiple companies participating in the decision making process and project direction. All decisions are made transparently, on the public mailing list, or in open IRC discussions.

Website

Project Outline

The goal of uDig is to provide a complete Java solution for desktop GIS data access, editing, and viewing. uDig aims to be:

  • User friendly, providing a familiar graphical environment for GIS users;
  • Desktop located, running as a thick client, natively on Windows, Mac OS/X and Linux;
  • Internet oriented, consuming standard (WMS, WFS, WCS) and de facto (GeoRSS, KML, tiles) geospatial web services; and,
  • GIS ready, providing the framework on which complex analytical capabilities can be built, and gradually subsuming those capabilities into the main application.

Steering Committee

  • Andrea Antonello @moovida
  • Frank Gasdorf @fgdrf
  • Jesse Eichar @jesseeichar
  • Jody Garnett @jodygarnett
  • Mauricio Pazos @mpazos

Contributing

Join us in working on uDig

There are two ways to take part: indirectly using github pull requests; and directly by obtaining commit access.

Build Instructions

1. We have three branches in our short term roadmap:

Check out the branch you wish to work with (or fork as you see fit). To check it out:

git clone https://github.com/uDig/udig-platform.git udig
cd udig
git checkout master

2. Download stuff (using maven to launch small ant download scripts):


     mvn clean install -f pom-libs.xml
[INFO] -——————————————————————————————————-
[INFO] BUILD SUCCESS
[INFO] -——————————————————————————————————-
[INFO] Total time: 8:05.291s

Option – Command Line Build

1. Tycho Build


      mvn clean install -Pproduct -Psdk -Pdocs
[INFO] -——————————————————————————————————-
[INFO] BUILD SUCCESS
[INFO] -——————————————————————————————————-
[INFO] Total time: 12:44.827s

2. Packaging, branding and installers::


      cd deploy
      ./all.sh
..snip..
Releasing linux64
Creating ./build/linux64/udig
Building ./build/udig-2.0.0-SNAPSHOT.linux.gtk.×86_64.zip …
Extracting ./../features/org.locationtech.udig-product/target/products/org.locationtech.udig-product-linux.gtk.×86_64.zip
Preparing ./build/linux64 with ./jre/jre1.6.0_25.lin64_gdal_ecw
Looking for ./jre/jre1.6.0_25.lin64_gdal_ecw.tar.gz
Extracting ./jre/jre1.6.0_25.lin64_gdal_ecw.tar.gz
Preparing ./build/linux64 with start up scripts and html files
Assemble ./build/udig-2.0.0-SNAPSHOT.linux.gtk.×86_64.zip

3. Upload to website

See results at http://udig.refractions.net/download/unstable/ there should be a 2.0.0-SNAPSHOT by the time you read this.

Option – Eclipse Build

Preferences

From the Eclipse Preferences screen:

1. Java —> Code Style —> Coding Template

Use the Import button and select the file `extras/org.locationtech.udig.dev/codetemplates.xml` Confirm the uDig header is available for New Java Files as shown::
/* uDig - User Friendly Desktop Internet GIS client
 * http://udig.refractions.net
 * (C) 2013, Refractions Research Inc.
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * (http://www.eclipse.org/legal/epl-v10.html), and the Refractions BSD
 * License v1.0 (http://udig.refractions.net/files/bsd3-v10.html).
 */

2. Java —> Code Style —> Code Formatter

Use the Import button and select the file `extras/org.locationtech.udig.dev/codeformatter.xml`

3. Java —> Compiler —> Errors/Warnings

Open the Code Style category and change Non-externalized strings to ‘Warning’.

4. Plug-in Development —> API Baselines

Change the Missing API baseline to ‘Warning’.

Target Platform and Running uDig

uDig makes use of a target platform, in order to download and reference bundles from:

  • Eclipse Rich Client Platform (we are using Indigo)
  • Babel Project (providing translations)
  • Orbit (open source components that have been checked by the Eclipse legal team)

Here is how to set that up:

1. Use the Import Existing Projects wizard to import the targets/indigo project into workspace.

2. Open up udig-indigo-target.target and click on Set as Target Platform

This will reset the target platform which will take some time.

3. Save a copy of the target-platform locally

Since the target definition uses online resources it’s a good idea to export it for offline development purposes.
To do so, click on the export action top right in the target platform editor.

Choose a destination folder to store features and bundles as a local P2 repository resolved via the target defintion file.

Later if there is a need to work offline you can easily create a new target platform definion, for details consult eclipse online help.

4. Once the target platform is finished you can import the remaining uDig projects.

5. Open up org.locationtech.udig/udig.product and click Launch the product

Find Bugs

We use FindBugs to catch many small issues as part of our review process:

1. Select Help —> Eclipse marketplace from the menu bar
2. Search for FindBugs and Install
3. You will be asked to restart eclipse

Take a moment to run FindBugs before submitting a pull request.

Something went wrong with that request. Please try again.