Debuggen von Python Scripts in Visual Studio Code
Es wird davon ausgegangen, dass die Visual Studio Code (VS Code) Installation auf aktuellem Stand ist und die ms-python.python-Erweiterung installiert ist. Einen allgemeinen Überblick dazu finden Sie unter Python debug configurations in Visual Studio Code.
Beachten Sie die folgenden Punkte:
•In dieser Anleitung wird raptorxmlxbrl-python als Befehl verwendet, um RaptorXML+XBRL Server als Python Interpreter auszuführen.
•Sie finden die ausführbare raptorxmlxbrl-python-Datei im Ordner bin Ihres RaptorXML+XBRL Server-Applikationsordners.
Übersicht
Wir stellen hier zwei Methoden vor, um Python Scripts mittels VS Code in RaptorXML+XBRL Server zu debuggen.
•Die Methode 1 funktioniert auch bei Servern und RaptorXML Python Callbacks (--script-Option).
•Bei der Methode 2 muss kein Quellcode geändert werden. Es handelt sich hierbei um einen modifizierten Aufruf von RaptorXML. Die Methode 2 funktioniert bei Servern und RaptorXML Python Callbacks (--script-Option) nicht.
•Beide Methoden funktionieren mit einem Standard-Pyhton Interpreter und dem importierten RaptorXML Python-Modul ('import altova_api.v2 as altova').
Methode 1: Änderung des Quellcodes
Führen Sie die folgenden Schritte durch:
1.Starten Sie: raptorxml-python -m pip install --upgrade debugpy
2.Fügen Sie zu Ihrem Python-Quellcode die folgenden Zeilen hinzu:
Python
import debugpy
debugpy.listen(5678)
debugpy.wait_for_client()
debugpy.breakpoint()
3.Kopieren Sie diese Launch-Konfiguration in VS Code launch.json (für die obigen Werte kann die Standardeinstellung verwendet werden) und wählen Sie sie für Run aus.
json5
{
"name": "Python: Remote Attach",
"type": "python",
"request": "attach",
"connect": {
"host": "localhost",
"port": 5678
},
"pathMappings": [
{
"localRoot": "${workspaceFolder}",
"remoteRoot": "."
}
]
}
Sie können diese auch mit dem Menübefehl Run->Add Configuration...->Python->Remote Attach ausführen und dabei die Standardeinstellungen übernehmen.
4.Führen Sie Ihr Python Script (oder RaptorXML mit --script Callbacks) wie gewohnt aus.
5.Starten Sie das Debuggen (normalerweise mit dem Tastaturkürzel F5).
Methode 2: Verwendung einer modifizierten Befehlszeile
Führen Sie die folgenden Schritte durch:
1.Fügen Sie (wie in Methode 1 weiter oben) eine Launch-Konfiguration hinzu und wählen Sie diese für Run aus.
2.Setzen Sie in Ihrem Python Script einen Breakpoint.
3.Führen Sie den Befehl raptorxml-python -m debugpy --listen 0.0.0.0:5678 --wait-for-client your-script-.py aus.
4.Starten Sie das Debuggen (normalerweise mit dem Tastaturkürzel F5).
Anmerkung: | Das Debuggen funktioniert normalerweise auch mit Containern und Remote Servern. Sie müssen in der Launch-Konfiguration den host-Schlüssel des connect-Eintrags ändern. Sie können auch andere Ports verwenden, solange der Code oder die Befehlszeile und launch.json einheitliche Werte haben. |
Definieren von raptorxml-python.exe als Standard-Interpreter von VS Code
raptorxml-python.exe kann als Standard-Python Interpreter von VS Code konfiguriert werden. Fügen Sie dazu folgende Zeilen zu Ihrer VS Code-Datei settigs.json hinzu:
.json
"python.defaultInterpreterPath": "/path/to/raptorxml-python.exe"
...
In diesem Fall kann auch eine Launch-Konfiguration "Current File" zum Starten des Scripts für das Debuggen verwendet werden. Nähere Informationen dazu finden Sie in der offiziellen Dokumentation zu VS Code.