2017-02-14 36 views
1

我從github存儲庫(https://github.com/Yenthe666/auto_backup)將自動備份模塊克隆到我的Odoo計算機,並將正確的依賴關係添加到odoo-server.conf文件中,但是當單擊「更新模塊列表」應用,我得到以下信息:Odoo 8自動備份模塊需要pysftp依賴關係

Traceback (most recent call last): 
File "/opt/odoo/openerp/http.py", line 544, in _handle_exception 
return super(JsonRequest, self)._handle_exception(exception) 
File "/opt/odoo/openerp/http.py", line 581, in dispatch 
result = self._call_function(**self.params) 
File "/opt/odoo/openerp/http.py", line 317, in _call_function 
return checked_call(self.db, *args, **kwargs) 
File "/opt/odoo/openerp/service/model.py", line 118, in wrapper 
return f(dbname, *args, **kwargs) 
File "/opt/odoo/openerp/http.py", line 314, in checked_call 
return self.endpoint(*a, **kw) 
File "/opt/odoo/openerp/http.py", line 810, in __call__ 
return self.method(*args, **kw) 
File "/opt/odoo/openerp/http.py", line 410, in response_wrap 
response = f(*args, **kw) 
File "/opt/odoo/addons/web/controllers/main.py", line 948, in call_button 
action = self._call_kw(model, method, args, {}) 
File "/opt/odoo/addons/web/controllers/main.py", line 936, in _call_kw 
return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs) 
File "/opt/odoo/openerp/api.py", line 268, in wrapper 
return old_api(self, *args, **kwargs) 
File "/opt/odoo/openerp/api.py", line 439, in old_api 
result = new_api(recs, *args, **kwargs) 
File "/opt/odoo/openerp/api.py", line 443, in new_api 
result = [method(rec, *args, **kwargs) for rec in self 
File "/opt/odoo/openerp/addons/base/module/wizard/base_module_update.py", line 15, in update_module self.updated, self.added = self.env['ir.module.module'].update_list() 
File "/opt/odoo/openerp/api.py", line 266, in wrapper 
return new_api(self, *args, **kwargs) 
File "/opt/odoo/openerp/api.py", line 508, in new_api 
result = method(self._model, cr, uid, *args, **old_kwargs) 
File "/opt/odoo/openerp/addons/base/module/module.py", line 651, in update_list 
handler.load_addons() 
File "/opt/odoo/openerp/http.py", line 1317, in load_addons 
m = __import__('openerp.addons.' + module) 
File "/opt/odoo/openerp/modules/module.py", line 80, in load_module 
mod = imp.load_module('openerp.addons.' + module_part, f, path, descr) 
File "/opt/odoo/auto_backup/auto_backup/__init__.py", line 23, in 
import backup_scheduler 
File "/opt/odoo/auto_backup/auto_backup/backup_scheduler.py", line 33, in 
raise ImportError('This module needs pysftp to automaticly write backups to the FTP through SFTP. 
Please install pysftp on your system. (sudo pip install pysftp)') 
ImportError: This module needs pysftp to automaticly write backups to the FTP through SFTP. Please install pysftp on your system. (sudo pip install pysftp) 

然後我在終端上鍵入sudo pip install pysftp和我

Requirement already satisfied (use --upgrade to upgrade): pysftp in /usr/local/lib/python2.7/dist-packages 
Requirement already satisfied (use --upgrade to upgrade): paramiko>=1.17 in /usr/local/lib/python2.7/dist-packages (from pysftp) 
Cleaning up... 

我甚至試圖鍵入sudo pip install pysftp --upgrade但我得到

Requirement already up-to-date: pysftp in /usr/local/lib/python2.7/dist-packages 
Requirement already up-to-date: paramiko>=1.17 in /usr/local/lib/python2.7/dist-packages (from pysftp) 
Cleaning up... 

請問你能幫助我嗎?

回答

0

我找到了解決方案!如果任何人有類似的問題,我所做的就是:

我試着輸入sudo pip uninstall pysftp,也沒有工作,然後我做:

sudo apt-get install libpq-dev python-dev libxml2-dev libxslt1-dev libldap2-dev libsasl2-dev libffi-dev 

這是需要運行pysftp的依賴關係(感謝@在github存儲庫的問題,lukebranch想通了)。此時,如果卸載pysftp工作,重新安裝pysftp並重新啓動Odoo服務器應該可以工作。但在我的情況下,這是不夠的。

所以之後,我輸入python進入python環境,然後輸入import pysftp。我得到了以下錯誤:

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/local/lib/python2.7/dist-packages/pysftp/__init__.py", line 12, in <module> 
    import paramiko 
    File "/usr/local/lib/python2.7/dist-packages/paramiko/__init__.py", line 30, in <module> 
    from paramiko.transport import SecurityOptions, Transport 
    File "/usr/local/lib/python2.7/dist-packages/paramiko/transport.py", line 33, in <module> 
    from cryptography.hazmat.backends import default_backend 
ImportError: No module named cryptography.hazmat.backends 

所以我退出Python環境,然後鍵入sudo pip install paramikosudo pip install cryptography。最後,我再次進入python環境,輸入import pysftp,它完美運行。

希望它可以幫助別人!