【问题标题】:jython LookupError or ImportErrorjython LookupError 或 ImportError
【发布时间】:2018-09-21 13:27:31
【问题描述】:

安装了 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,似乎可以解决第一个错误,并且无法摆脱第二个。

【问题讨论】:

  • 您是如何安装 Jython 2.7.1 的?你的操作系统是什么?

标签: python jython


【解决方案1】:

这里的问题是双重的:

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

一旦你做了这两件事,编码的导入就应该起作用了。

【讨论】:

    猜你喜欢
    • 2017-06-11
    • 2013-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-05
    • 2012-02-16
    • 2010-12-10
    • 2012-03-21
    相关资源
    最近更新 更多