我在Linux Ubuntu 16.04中浏览了Neon
当我运行odoo服务器时,它在端口8069中可以正常工作
但是,当我调试相同的odoo服务器时,(现在,端口是8072)它似乎冻结在一个无限循环中。在浏览器中没有出现任何内容(等待localhost ...),日志显示如下:
...
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
这是我的odoo9-server.conf(重命名为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
有什么不对吗?
答案 0 :(得分:1)
要在eclipse中调试你的odoo + python代码,请在调试透视图中启动eclipse并按照给定的步骤操作:
1:按" ctr + c"停止运行Odoo服务器。
2:在eclipse中转到菜单"运行/调试配置"。在" Python Run"下的配置窗口中,创建新的调试配置(双击' Python Run')。
3:创建新的调试配置后,按照给定的步骤进行操作:
3.1:" Main"选项"项目",选择"服务器"工作区中的项目或文件夹(Odoo Server所在的文件夹)。
3.2:编写& openerp-server'的位置或者' odoo.py'在"主要模块"。
Ex:$ {workspace_loc:odoo / openerp-server}。 3.3:在"参数"选项卡"程序参数",单击按钮"变量"并且会出现新窗口。
3.4:然后创建新的"变量"点击"编辑变量"按钮和新窗口将出现。
3.5:按下"新"按钮并将您的插件路径作为值。
Ex: - addons ../addons,../your_module_path 3.6:在所有打开的窗口中按确定,然后按"应用"。
4:现在进入" PyDev Package Explorer"查看转到odoo并右键单击" openerp-server"或odoo.py文件,选择'调试为 - > Python Run'。
5:现在进入"控制台"你可以看到你的服务器已经启动。
6:现在打开要调试的.py文件并设置断点。
7:现在从> gtk'开始你的模块表格或者'网络客户端'当执行到达断点时执行将停止。
8:现在通过按" F5,F6,F7和#34;来调试代码。你可以看到变量的价值。
答案 1 :(得分:1)
要调用pdb,请添加此行
import pdb; pdb.set_trace()
您想要设置断点的地方
然后用--debug
标志设置开始你的odoo,这是
./odoo.py --addons=addons,myaddons --debug
然后当您在服务器上执行一个操作,触及您调用的点pdb
时,执行将立即停止并且您将有一个可用于调试的pdb提示
答案 2 :(得分:0)
最后我得到了解决方案。
在调试配置中,我更改了主模块的内容,我写了这个:
${workspace_loc:my_project/openerp-gevent}
重要的部分是 openerp-gevent
现在,调试工作正常