jython LookupError或ImportError

时间:2018-04-11 15:18:44

标签: python jython

安装了Jython 2.7.1,但看起来我无法导入一些模块。我遇到了以下错误:

import json
File "json/__init__.py", line 108, in <module>
File "/home/ec2-user/temp/jython271/Lib/json/decoder.py", line 24, in <module>
File "/home/ec2-user/temp/jython271/Lib/json/decoder.py", line 18, in _floatconstants
LookupError: no codec search functions registered: can't find encoding 'hex'

import urllib2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "urllib2.py", line 94, in <module>
File "httplib.py", line 72, in <module>
File "/home/ec2-user/temp/jython271/Lib/socket.py", line 3, in <module>
from _socket import (
File "_socket.py", line 2, in <module>
ImportError: No module named encodings

有什么想法吗?我在linux上有python2.7,如果我在CLASSPATH中包含python2.7 lib,它似乎可以解决第一个错误,并且无法摆脱第二个错误。

1 个答案:

答案 0 :(得分:0)

这里的问题有两个:

  1. 您需要安装Python 2.7-它具有许多您要导入的代码模块(例如编码)。
  2. 您需要将JYTHONPATH环境变量设置为Python 2.7模块的位置(通常是/usr/lib/python2.7)-这就是Jython知道在哪里查找模块的方法。

完成这两项操作后,就可以导入编码。