首页 文章

pylucene:安装错误

提问于
浏览
1

UPDATE question:

谢谢Favoretti!

我使用apt-get安装了jcc,pylucene下的makefile运行了一点,抛出了java错误,我也没有线索 . 这里是 . 你能告诉我它是什么错误吗?

While loading org/apache/pylucene/search/PythonIntParser
Traceback (most recent call last):
  File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/usr/lib/python2.7/dist-packages/jcc/__main__.py", line 98, in <module>
    cpp.jcc(sys.argv)
  File "/usr/lib/python2.7/dist-packages/jcc/cpp.py", line 549, in jcc
    cls = findClass(className.replace('.', '/'))
  File "/usr/lib/python2.7/dist-packages/jcc/cpp.py", line 73, in findClass
    cls = _findClass(className)
jcc.cpp.JavaError: java.lang.UnsupportedClassVersionError: org/apache/pylucene/search/PythonIntParser : Unsupported major.minor version 51.0
Java stacktrace:
java.lang.UnsupportedClassVersionError: org/apache/pylucene/search/PythonIntParser : Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)

make: *** [compile] Error 255

2 回答

  • 2

    按照favoretti和pradeep的建议,如果您仍然面临问题,请尝试以下方法:

    • 我建议下载jcc并重新安装,详见http://lucene.apache.org/pylucene/jcc/install.html安装jcc时,请在jcc源代码中打开setup.py并确认变量'linux2'指向你想要使用的版本,例如'linux2':'/usr/lib/jvm/java-7-oracle'或者在你的情况下,会引用到openjdk .

    • 输入pylucene源文件夹 . 确认"PREFIX_PYTHON"应与 which python 匹配 .

    • 在pylucene来源中做'make clean' . 这应该摆脱早期版本中陈旧的类文件,并使用'make'重建 . 这对我有用 .

    关心萨钦

  • 0

    如果您的python位于/ usr / bin / python中,即系统python并且来自您的发行版提供的包 - 它默认情况下可能不会查找/usr/local/lib/python2.7/site-packages/jcc .

    您可以尝试将PYTHONPATH环境变量设置为/usr/lib/python2.7:/usr/local/lib/python2.7并尝试编译,否则只需将jcc包移动到/usr/lib/python2.7 .

    这假设您的python安装来自系统默认包,它的“home”位置是/usr/lib/python2.7 .

    希望这可以帮助 .

相关问题