我有这个函数可以在 linux 上使用 tika 读取 doc 文件:
def read_doc(doc_path):
output_path=doc_path+'.txt'
java_path='/home/jdk1.7.0_17/jre/bin/'
environ = os.environ.copy()
environ['JAVA_HOME'] =java_path
environ['PATH'] =java_path
tika_path=java_path+'tika-app-1.3.jar'
shell_command='java -jar %s --text --encoding=utf-8 "%s" >"%s"'%(tika_path,doc_path,output_path)
proc=subprocess.Popen(shell_command,shell=True, env=environ,cwd=java_path)
proc.wait()
当我从命令行运行此函数时,它工作正常,但是当我使用 CGI 调用相同的函数时,我收到以下错误:
VM 初始化期间发生错误无法为对象堆保留足够的空间
我检查了这个特定错误的先前答案,他们建议增加内存,但这似乎不起作用......我认为这与内存分配无关,而是来自一些读/写/执行特权cgi脚本,知道如何解决这个问题吗?