EDIT 22.10.2014:
Die Anleitung ist jetzt im smarthome Wiki abgelegt. Die Anleitung hier wird nicht mehr gepflegt:
https://github.com/mknx/smarthome/wi...f-Smarthome.py
Da ab und zu hier im Forum schon nach IDE, Code Validierung und Debuging gefragt wurde, nachfolgend ein kleines Tutorial wie Logiken in Eclipse PyDev geschrieben werden können und als Remote Debug Process auf dem SH.py ausgeführt werden können.
Warum?
- smarthome.py läuft auf Raspberry Pi und ist im Schaltschrank eingebaut. Zugriff nur über SSH
- Code Entwicklung über Windows Laptop im Notepad++. Hat zwar Syntax Highlighting, zeigt aber keine Syntax Fehler an
==> 3/4 meiner Zeit verschwendet weil Punkt, Komma oder Strich fehlen.
Lösung:
- Verwendung von Eclipse, einer genialen IDE und auch noch kostenlos
- Pydev Plugin für Python
Voraussetzungen:
Damit der Remote Debugger pydevd später funktioniert müssen folgende Voraussetzungen erfüllt sein:
- Auf Debug Server und Client muss die gleiche minor Version von Python laufen, momentan python 3.2
- Auf Debug Server und Client muss die Source Code Datei exakt den gleichen Inhalt haben
- Java, Eclipse und Python laufen bei mir als 32bit auf der Windows Maschine. Mischen geht nicht, das hat mich einige Gläser Rotwein gekostet
Los gehts:
Die Anleitung ist jetzt im smarthome Wiki abgelegt. Die Anleitung hier wird nicht mehr gepflegt:
https://github.com/mknx/smarthome/wi...f-Smarthome.py
Da ab und zu hier im Forum schon nach IDE, Code Validierung und Debuging gefragt wurde, nachfolgend ein kleines Tutorial wie Logiken in Eclipse PyDev geschrieben werden können und als Remote Debug Process auf dem SH.py ausgeführt werden können.
Warum?
- smarthome.py läuft auf Raspberry Pi und ist im Schaltschrank eingebaut. Zugriff nur über SSH
- Code Entwicklung über Windows Laptop im Notepad++. Hat zwar Syntax Highlighting, zeigt aber keine Syntax Fehler an
==> 3/4 meiner Zeit verschwendet weil Punkt, Komma oder Strich fehlen.
Lösung:
- Verwendung von Eclipse, einer genialen IDE und auch noch kostenlos
- Pydev Plugin für Python
Voraussetzungen:
Damit der Remote Debugger pydevd später funktioniert müssen folgende Voraussetzungen erfüllt sein:
- Auf Debug Server und Client muss die gleiche minor Version von Python laufen, momentan python 3.2
- Auf Debug Server und Client muss die Source Code Datei exakt den gleichen Inhalt haben
- Java, Eclipse und Python laufen bei mir als 32bit auf der Windows Maschine. Mischen geht nicht, das hat mich einige Gläser Rotwein gekostet
Achtung
Die Schritte im Teil 1 und Teil 2 beschränken sich auf den Client. Da kann man nichts kaputt machen.
Unter Teil 3 muss aber dann mittels Shell auf smarthome gearbeitet werden. Hier also vorsichtig sein und lieber mal ein Backup fahren.
Die Schritte im Teil 1 und Teil 2 beschränken sich auf den Client. Da kann man nichts kaputt machen.
Unter Teil 3 muss aber dann mittels Shell auf smarthome gearbeitet werden. Hier also vorsichtig sein und lieber mal ein Backup fahren.
Los gehts:
- Downloads
--> Python 3.2 32Bit MSI
--> Eclipse Standard
ACHTUNG
Eclipse gibt es auch schon als fertiges Eclipse PyDev Paket zum Download. Das hat bei mir aber Fehler verursacht. Daher Eclipse Standard und das PyDev Plugin selbst installieren, wie beschrieben. - Installation Python
Installer ausführen und am besten nach C:\python32 installieren.Unbedingt beachten, dass der Installationspfad keine Leerzeichen enthält, also z.B. nicht nach "Program Files" da sonst PyDev nicht läuft. - Installation Eclipse
Zip File entpacken, Eclipse muss nicht installiert werden. Sollte Eclipse beim Start eine Fehlermeldung liefern, dann fehlt der Pfad zur Java in der Windows Pfadvariablen und muss nachgetragen werden.
Auch hier darauf achten, dass keine Leerzeichen im Installationspfad enthalten sind.
Eclipse muss zur Installation von Plugins als Administrator ausgeführt werden! - Installation Pydev
In Eclipse unter "Help" --> "Install new Software" die Installationsmaske laden.
Rechts auf Add und folgendes Repository hinzufügen.
Name: PyDev Nightly Extension
Location: http://pydev.org/nightly
Warten bis Eclipse die installierbaren Pakete anzeigt und dann unter PyDev "PyDev for Eclipse 3.2.1.20140109...." anhaken.
Durchs Menü hangeln und warten bis Eclipse das PyDev Update installiert hat
Achtung
Nicht das http://pydev.org/update Repository verwenden, die 2013 Versionen liefern mit Python 3.2 einen Syntax Error - Eclipse Konfigurieren
--> "Window" --> "Preferences" --> "Pydev" --> "Interpreter" --> "Python Interpreter"
- auf new klicken und die installiere python.exe auswählen
- darauf hin werden automatisch einige PYTHONPATH Pfade ergänzt - Erstmal Lokal Testen
Jetzt ist Eclipse so konfiguriert, dass Lokal in Python programmiert und getestet werden kann.
Neues Projekt:
"File" --> "New" --> "Project"
Unter PyDev "PyDev Project" auswählen.
Name vergeben und Interpreter auswählen.
Neues Module:
"File" --> "New" --> "Other"
- "Pydev Module" auswählen.
- Dateiname ohne Endung ".py" wählen.
- Template "Empty" wählen.
Testprogramm:
Code:#!/usr/bin/env python # x = 0 while x<100 : print(x) x = x+1
Jetzt einfach mal auf "Run" drücken und dann sollten im Console Fenster die Zahlen 0 - 99 auftauchen.
Weiter gehts im Teil 2.
Kommentar