我正在尝试使用libre office设置jodconverter。当我尝试使用它时,出现以下错误:officeHome未设置,无法自动检测。

我在办公室里放了家,但是现在还在。以下是我的设置方法。谁能告诉我我在做什么错。

public void convert(){
File inputFile = new File("SippKey.rtf");
File outputFile = new File("SippKeyCon.html");

LocalOfficeManager.builder().officeHome("/opt/libreoffice6.0").build();
final LocalOfficeManager officeManager = LocalOfficeManager.install();

try {

// Start an office process and connect to the started instance (on port
2002).
officeManager.start();

// Convert
JodConverter
         .convert(inputFile)
         .to(outputFile)
         .execute();
}       catch (OfficeException ex) {
//  ex.printStackTrace();
        Logger.getLogger(QrGUI.class.getName()).log(Level.SEVERE, null,
ex);
    } finally {
// Stop the office process
OfficeUtils.stopQuietly(officeManager);
   }
    }

最佳答案

您应该通过以下方式初始化管理器:

final LocalOfficeManager officeManager =
    LocalOfficeManager.builder().officeHome("/opt/libreoffice6.0").install().build();


LocalOfficeManager.install()只会创建一个默认管理器,它将尝试自动检测Office安装。因此,您实际使用的管理员不是您使用自定义Office主目录初始化的管理员。

08-25 10:34