2016-09-12 3 views
0

Ich habe Neon Eclipse in Linux Ubuntu 16.04Wie kann ich odoo 9 in Eclipse debuggen? [Linux]

Wenn ich einen odoo Server laufen, es funktioniert alles gut in Port 8069

Aber, wenn ich den gleichen odoo Server debuggen, (jetzt auf den Hafen ist 8072) es scheint in einer Endlosschleife einzufrieren. In dem Browser etwas nicht angezeigt wird (Warte auf localhost ...) und das Protokoll zeigt dies:

... 
25138 INFO mydb openerp.modules.loading: 81 modules loaded in 0.73s, 0 queries 
25138 INFO mydb openerp.modules.loading: Modules loaded. 
25138 INFO mydb openerp.addons.base.ir.ir_http: Generating routing map 
192.168.1.31 - - [2016-09-12 12:14:51] "GET/HTTP/1.1" 200 24082 21.358104 
25138 INFO mydb openerp.addons.bus.models.bus: Bus.loop listen imbus on db postgres 

Das ist meine odoo9-server.conf (umbenannt OpenERP-server.conf):

[options] 
admin_passwd = myAdminPass 
db_host = False 
db_port = False 
db_user = myUserName 
db_password = myDatabasePass 
addons_path = /etc/odoo/server/addons,/etc/odoo/server/addons_extra 
logfile = None 
xmlrpc_port = 8069 
log_level = debug 

Ist etwas nicht in Ordnung?

Antwort

0

Endlich habe ich die Lösung. diese

In den Debug-Konfigurationen, ich den Inhalt des Hauptmoduls geändert und ich schrieb:

${workspace_loc:my_project/openerp-gevent} 

Der wichtige Teil ist das OpenERP-GEVENT

Jetzt arbeitet die Debug-

feine
1

Um Ihre odoo + Python-Code in Eclipse zu debuggen, Eclipse in Debug-Perspektive starten und die angegebenen Schritte folgen:

1: Stoppen Sie Ihren Odoo Server läuft durch "ctr + c" drücken.

2: Gehen Sie in der Eclipse zum Menü "Run/Debug Configurations". Im Konfigurationsfenster unter "Python Run", erstellen Sie eine neue Debug-Konfiguration (Doppelklick auf 'Python Run').

3: Nach dem neuen Debug-Konfiguration den angegebenen Schritte erstellen:

3.1: In Registerkarte „Allgemein“ unter „Projekt“, wählen Sie das „Server“ Projekt oder Ordner aus Ihrem Arbeitsbereich (in der Odoo Server befindet) .

3.2: Schreiben Sie den Speicherort von 'openerp-server' oder 'odoo.py' unter "Hauptmodul".

Beispiel: $ {workspace_loc: odoo/openerp-server}. 3.3: Klicken Sie in der Registerkarte "Argumente" unter "Programmargumente" auf die Schaltfläche "Variablen" und es erscheint ein neues Fenster.

3.4: Dann erstellen Sie eine neue "Variable", indem Sie auf "Variablen bearbeiten" klicken und ein neues Fenster erscheint.

3.5: Drücken Sie auf "Neu" und geben Sie Ihren Addons Pfad als Wert an.

Beispiel: --addons ../addons,../your_module_path 3.6: Drücken Sie Ok in allen geöffneten Fenstern und dann "Übernehmen".

4: In die "PyDev Package Explorer" Ansicht gehen Sie zu odoo und klicken Sie mit der rechten Maustaste auf "openerp-server" oder odoo.py Datei, wählen Sie 'Debug As -> Python Run'.

5: Jetzt in "Konsole" können Sie sehen, dass Ihr Server gestartet wurde.

6: Öffnen Sie jetzt Ihre .py-Datei, die Sie debuggen möchten, und legen Sie einen Haltepunkt fest.

7: Starten Sie nun das Formular Ihres Moduls von 'gtk' oder 'web-client' und die Ausführung wird beendet, wenn die Ausführung den Break-Point erreicht.

8: Jetzt genießen Sie durch Debuggen Ihres Codes durch Drücken von "F5, F6, F7" und Sie können den Wert Ihrer Variablen sehen.

Quelle: https://stackoverflow.com/a/12298831/1312904

+0

Ich habe Schritt für Schritt gefolgt und das Ergebnis, das ich habe, ist das gleiche. – MouTio

1

Um pdb aufrufen, fügen Sie diese Zeile

import pdb; pdb.set_trace() überall Sie einen Haltepunkt

festlegen möchten, und dann entlang der Linien Ihres odoo mit dem --debug-Flag gesetzt, etwas anfangen

./odoo.py --addons=addons,myaddons --debug 

und dann, wenn Sie eine Aktion auf dem Server ausführen, die trifft An dem Punkt, an dem Sie pdb aufgerufen haben, wird die Ausführung sofort gestoppt und Sie erhalten eine pdb-Eingabeaufforderung, mit der Sie debuggen können