在ubuntu上使用Libreoffice转换文件时出错:
已完成的进程(参数=[“soffice,”“--headless,”“--convert-to,”"txt:Text,"“/var/www/Project/temp/e4bac2c2e7c04eb79cfa522967a30dd3.docx,”"--outdir,“”/var/www/Project/temp/“],返回代码=77,标准输出= b”,标准错误= b“javaldx失败!\n警告:无法从javaldx读取路径\n“)
使用子进程:
如果您有任何问题subprocess.run。
~# java --版本
OpenJDK 64位服务器虚拟机(版本号11.0.6 + 10-post-Ubuntu-1ubuntu118.04.1,混合模式,共享)
2条答案
按热度按时间zbq4xfa01#
还好找到了解决办法:
如果您在headless中使用libreoffice,以非root用户身份尝试将docx转换为pdf,则会出现以下错误:
您的用户没有设置主文件夹,或者主文件夹是不可写的。我只是从直接调用libreoffice切换到通过shell脚本调用它,如下所示:
tomcat8是此文件夹的所有者,现在转换工作正常。
4dbbbstv2#
扩展@wolfmanx的评论:下面是我在Ubuntu 18.04上的工作
sudo apt-get install libreoffice-java-common default-jre
尤其是
default-jre
是必要的。请注意,这似乎“只是”一个警告。尽管如此,操作可能会起作用。