User Tools

Site Tools


python:howto:py-eclipse

FIXME This page is not fully translated, yet. Please help completing the translation.
(remove this paragraph once the translation is finished)

Eclipse, Python und Grass

Die Einrichtung der GRASS-Umbegung für Eclipse sieht schlimmer aus als sie ist.

Konfiguration von Eclipse unter Linux (Ubuntu 12.04)

Die folgende Beschreibung ist unter Xubuntu 12.04 getestet und die Pfade entsprechen denen von Ubuntu/Kubuntu/Xubuntu. Generell müsste es unter allen Linux-Varianten funktionieren.

GRASS-Bibliotheken einbinden

Damit Python auf die Grass-Bibliotheken zugreifen kann, müssen diese für Python auffindbar sein. Eigentlich sollte es durch das setzen der Umgebungsvariable LD_LIBRARY_PATH funktionieren - tut es aber zumindest unter Ubuntu 12.04 nicht. Deshalb wie folgt vorgehen (root-Rechte erforderlich):

Textdatei mit dem Namen grass.conf im Verzeichnis /etc/ld.so.conf.d/ anlegen.

 sudo geany /etc/ld.so.conf.d/grass.conf

In der Datei den Eintrag /usr/lib/grass64/lib erstellen.

/usr/lib/grass64/lib

Systemumgebung mit dem Befehl ldconfig aktualisieren.

sudo ldconfig

Um in Eclipse Python-Programme entwickeln zu können, muss man das PyDev Plugin installieren. Das ist mit dem Eclipse-Update-Manager einfach über Menü: Help > Install New Software.

Sollte ein Proxy zwischengeschaltet sein muss diser in Ecclipse unter Preferences > Network Connections > Manual > HTTP eingetragen werden. Eclipse neu starten!

www-proxy1.uni-marburg.de
3128

Unter Work with die URL

http://pydev.org/updates/

eintragen. Dann die entsprechenden Pakete markieren und next klicken. Zwischenzeitig bestätigen dass den Apatana Certificates vertraut wird.

PyDev-Umgebung in Eclipse konfigurieren

  1. Menü Window > Prefrences in Eclipse öffnen
  2. In das Menü Pydev > Interpreter - Python wechseln
  3. Die Schaltfläche Autoconfig klicken (alles bestätigen)
  4. Dann im Reiter Libraries die folgenden Pfade einzeln durch wiederholtes klicken der Schaltfläche New Folder hinzufügen:
  /usr/lib/grass64/etc
  /usr/lib/grass64/etc/python
  /usr/lib/grass64/bin
  /usr/lib/grass64/scripts
  • Bestätigung mit der Schaltfläche Apply und dann mit OK beenden.

Neues Eclipse-Projekt erstellen

  • Über das Menü File > New > Pydev Project ein neues Projekt erstellen
  • Im Projekt über File > New > Pydev Module ein neues Python-Modul erstellen

Runtime-Umgebung für das neue Eclipse-Projekt festlegen

  • Menü Run > Run Configurations
  • Im Eintrag Python Run den Namen der Runtime-Umgebung des oben erstellten Python-Moduls auswählen.
  • Im Reiter Environment die Variable GISBASE mit dem Wert /usr/lib/grass64 hinzufügen.
  • Bearbeitung mit der Schaltfläche Apply und dann OK beenden.

Damit ist alles eingerichtet und man kann das Test-Modul laufen lassen (siehe unten).

Konfiguration von Eclipse unter Windows 7

Die folgende Beschreibung ist unter Windows 7 (64bit) mit Eclipse und JDK in der 32bit-Variante getestet (32bit weil die Webbrowser auf fast allen 64bit Windows Systemen 32bit-Browser sind und deshalb normalerweise auch Java in der 32bit-Version installiert ist).

Die nachfolgenden Pfade gehen davon aus, dass GRASS etc. mit dem OSGeo4W Installer direkt unter C:\ installiert wurde.

Die Windows-Variante startet dann bei Schritt 2 der Linux-Variante.

Um in Eclipse Python-Programme entwickeln zu können, muss man das PyDev Plugin installieren. Das ist mit dem Eclipse-Update-Manager einfach unter dem Menüpunkt: Help > Install New Software.

Derzeit ist die URL der Datenquelle:

http://pydev.org/updates/

PyDev-Umgebung in Eclipse konfigurieren

  • Menü Window > Prefrences in Eclipse öffnen
  • In das Menü Pydev > Interpreter - Python wechseln
  • Im Reiter Libraries den folgenden Pfad hinzufügen (Schaltfläche New Folder): C:\OSGeo4W\apps\grass\grass-6.4.2\etc\python
  • Bearbeitung mit der Schaltfläche Apply und dann OK beenden.

Neues Eclipse-Projekt erstellen

  • Über das Menü File > New > Pydev Project ein neues Projekt erstellen
  • Im Projekt über File > New > Pydev Module ein neues Python-Modul erstellen

Runtime-Umgebung für das neue Eclipse-Projekt festlegen

  • Menü Run > Run Configurations
  • Im Eintrag Python Run den Namen der Runtime-Umgebung des oben erstellten Python-Moduls auswählen.
  • Im Reiter Environment die folgenden Variable/Wertekombinationen eintragen
    • GISBASE: C:\OSGeo4W\apps\grass\grass-6.4.2
    • PATH: C:\OSGeo4W\bin;C:\OSGeo4W\apps\msys\bin;C:\OSGeo4W\apps\grass\grass-6.4.2\lib
  • Bearbeitung mit der Schaltfläche Apply und dann OK beenden.

Damit ist alles eingerichtet und man kann das Test-Modul laufen lassen (siehe unten).

Testmodul

Wenn man den folgenden Text in das erstellte Python-Modul einfügt und laufen lässt, kann man testen, ob es funktioniert hat. Hierzu bitte die Variablen gisdbase, location, location so anpassen, dass sie auf das eigene GRASS-Projekt zeigen.

import os
import grass.script as grass
import grass.script.setup as gsetup
gisbase = os.environ['GISBASE']
gisdbase = '/media/permanent/temp/meg-agis/01_perfekte_gipfel/grass'
location = 'DGM_Hessen'
mapset = 'PERMANENT'
gsetup.init(gisbase, gisdbase, location, mapset)
print grass.gisenv()
python/howto/py-eclipse.txt · Last modified: 2018/12/23 19:46 (external edit)