Doc和Docx到PDF的转换,在Linux上使用Java

Doc和Docx到PDF的转换,在Linux上使用Java,java,pdf,Java,Pdf,我有一个Java代码,可以使用document4j将doc、docx转换为pdf。它在windows上运行良好,但在linux中我遇到了这个问题。我可以在linux上使用这个库吗?我能有什么选择 错误是 java.io.IOException: Cannot run program "cmd" (in directory "/tmp/1542047549404-0"): error=2, No such file or directory at java.lang.ProcessBuil

我有一个Java代码,可以使用document4j将doc、docx转换为pdf。它在windows上运行良好,但在linux中我遇到了这个问题。我可以在linux上使用这个库吗?我能有什么选择

错误是

java.io.IOException: Cannot run program "cmd" (in directory "/tmp/1542047549404-0"): error=2, No such file or directory
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048) ~[na:1.8.0_171]

2018-11-12 18:32:29.508 ERROR 10831 --- [pool-1-thread-1] c.d.c.msoffice.MicrosoftWordBridge       : Unable to run script: /tmp/1542047549404-0/word_start184242440.vbs

java.io.IOException: Could not execute [cmd, /S, /C, ""/tmp/1542047549404-0/word_start184242440.vbs""] in /tmp/1542047549404-0.
    at org.zeroturnaround.exec.ProcessExecutor.invokeStart(ProcessExecutor.java:936) ~[zt-exec-1.8.jar!/:na]

我认为有几个原因可以解释为什么转换不能在linux下工作:

[…]只有在以下情况下才能运行LocalConverter:

  • JVM在微软VBS脚本主机附带的MS Windows平台上运行(这适用于所有当代版本的MS Windows)
  • MS Word安装在版本2007或更高版本中。仅当安装PDF插件时才支持PDF转换。该插件包含在Word 2010或更高版本中的MS Word中
  • LocalConverter启动时MS Word尚未运行。对于由LocalConverter的另一个实例运行的MS Word实例尤其如此。(如前所述,请注意,对于在不同JVM上运行的实例或由不同类加载器加载的实例也是如此。)
  • MS Word已为运行JVM的用户正确激活和配置。因此,MS Word不需要在程序启动或任何其他向导时进行任何配置
  • 当使用LocalConverter的JVM应用程序作为服务运行时,请注意下面MS Windows服务配置文件中有关使用MS Word的信息
有关替代方法,请参见