1

我正在使用 OpenOffice.org API 阅读 Open Office 电子表格文档。

问题是,我无法停止 OpenOffice 进程。文档关闭,但进程继续运行(如任务管理器所示)。因此 jvm 不存在,即使 i write(System.exit(1))。我必须在任务管理器中手动结束该过程。

ClassLoader loader = ClassLoader.getSystemClassLoader();
if (loader instanceof URLClassLoader) {
    URLClassLoader cl = (URLClassLoader) loader;
    Class sysclass = URLClassLoader.class;
    try {
        Method method = sysclass.getDeclaredMethod("addURL", new Class[]{URL.class});
        method.setAccessible(true);
        method.invoke(cl, new Object[]{new File(ooBaseDirectory).toURL()});
    } catch (Exception e) {
    CatchHelper.catchException(e);
    }
} 

我已经看到了所有选项

http://wiki.openoffice.org/wiki/Documentation/DevGuide/OfficeDev/Closing_Documents

并且还使用了该XDesktop.terminate()选项。

但是,似乎没有任何效果。

  • Java 版本:JDK 1.6 更新 14
  • 操作系统:Windows XP(与 Windows 7 相同)
  • Open Office:3.2版(软件无法升级)
4

0 回答 0