当我尝试使用jpype使用stanford解析器时,我得到以下错误
文件“C:\ Python26 \ lib \ site-packages \ stanford_parser \ parser.py”,第103行, 在 init
self.parser = self.package_lexparser.LexicalizedParser(self.pcfg_model_fname)
文件“C:\ Python26 \ lib \ site-packages \ jpype_jpackage.py”,第55行, 在致电
raise TypeError, "Package "+self.__name+" is not Callable"
TypeError:包edu.stanford.nlp.parser.lexparser.LexicalizedParser不可调用
答案 0 :(得分:2)
我遇到了同样的情况。 原因是路径不正确。
jar文件的路径是否正确?
要启动JVM,我们调用startJVM(),如
jpype.startJVM(jpype.getDefaultJVMPath(), "-ea", "-Djava.class.path=%s" % (jar_path),)
如果“jar_path”不正确,则效果不佳。
答案 1 :(得分:2)
自从这个问题被提出以来已经很久了但是如果有人来到这里,我曾经遇到过同样的问题,并通过修复" stanford-parser.jar&#34的路径来修复它。 ;。 在我的情况下(Ubuntu),我在" parser.py"中修复了这一行:
os.environ.setdefault("STANFORD_PARSER_HOME", "../3rdParty/stanford-parser/stanford-parser-2010-08-20")
并且错误停止了报告。只要确保你正确地通往" stanford-parser.jar"和PCFG文件。