python - 警告 : failed to read path from javaldx

标签 python linux ubuntu libreoffice

在 ubuntu 上使用 Libreoffice 转换文件时出现错误:

CompletedProcess(args=['soffice', '--headless', '--convert-to', 'txt:Text', '/var/www/Project/temp/e4bac2c2e7c04eb79cfa522967a30dd3.docx', '--outdir', '/var/www/Project/temp/'], returncode=77, stdout=b'', stderr=b'javaldx failed!\nWarning: failed to read path from javaldx\n')

使用子进程:

process = subprocess.run(['soffice', '--headless', '--convert-to', 'txt:Text', path_docx, '--outdir', settings.TEMP_ROOT], stdout=subprocess.PIPE, stderr=subprocess.PIPE,超时=超时)

~# java --version

openjdk 11.0.6 2020-01-14
OpenJDK 运行时环境(build 11.0.6+10-post-Ubuntu-1ubuntu118.04.1)
OpenJDK 64-Bit Server VM (build 11.0.6+10-post-Ubuntu-1ubuntu118.04.1, 混合模式, 共享)

最佳答案

好的找到了解决方案:
如果您使用非 root 用户在 headless 中使用 libreoffice,尝试将 docx 转换为 pdf,则会出现以下错误:

javaldx failed!
Warning: failed to read path from javaldx

您的用户没有设置主文件夹,或者主文件夹不可写。我刚刚从直接调用 libreoffice 切换到通过这样的 shell 脚本调用它:
export HOME=/opt/fhir-services && /usr/lib/libreoffice/program/./soffice --headless --invisible --convert-to pdf --outdir /opt/fhir-services /opt/fhir-services/tmp.docx

tomcat8 是这个文件夹的所有者,现在转换工作。

关于python - 警告 : failed to read path from javaldx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60414557/

相关文章:

python - 由于 OSError : [Errno 2] No such file or directory: '/C:/Windows/TEMP/abs_e9b7158a-aa56-4a5b-87b6-c00d295b01fanefpc8_o/无法安装软件包

linux - Perl: Device::USB 没有通过测试

c - 函数 fopen(filename, "r") 在我的 Ubuntu 上不起作用

linux - 终端命令进行延时拍摄,如何在 X 时间后停止?

java - 如何在ubuntu上的java终端中设置路径?

php - php 7 Ubuntu 16.04 中 php.ini 中的 include_path = ".:/usr/share/php"

Python OpenCV : Hough Transform does not detect obvious lines

python - 无法在内部使用几何管理器包

python - 来自 sys.getrefcount 的意外结果

linux - 将 "ls"从 emacs dired 更改为其他应用程序