【问题标题】:opening ms word using java not working when program exported as runnable jar当程序导出为可运行 jar 时,使用 java 打开 ms word 不起作用
【发布时间】:2015-07-02 16:05:16
【问题描述】:

我已使用以下代码打开放置在 eclipse 项目文件夹中的 .docx 文件,如果我使用 eclipse 运行程序,我可以打开 .docx 文件,但如果我将程序导出为可运行的 jar 文件,程序没有打开 .docx 文件。请为此提供一些解决方案。

   File userManual = new File("ToolGuide.docx");

    try {
        java.awt.Desktop.getDesktop().open(userManual);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

.docx文件放在eclipse下面的项目文件夹结构中

项目文件夹/ToolGuide.docx

【问题讨论】:

  • docx 是否与 JAR 位于同一目录中?如果不是,您需要使用完整路径来解决它。而且我希望它不包含在 JAR 中,因为这肯定不会起作用
  • 嗨@Marged 感谢您的回复。 .docx 与 eclipse 项目中的其他 jar 位于同一目录中,我尝试将 docx 放在新的源文件夹中并提供路径,当导出为可运行 jar 时它仍然无法正常工作。我确信 .docx 会与可运行 jar 一起导出,因为导出的可运行 jar 的大小为 2.3 MB(带 docx)和 2 MB(不带 docx),而 docx 的大小 ~ = 300KB。

标签: java eclipse jar


【解决方案1】:

您的目录内容应如下所示:

如果您随后使用 java -jar application.jar 启动应用程序,则 wordfile 相对于您的代码定位,并且应该在您使用 ./wordfile.docx 寻址时打开。

【讨论】:

  • 谢谢,以上答案对我有用。但不知道为什么我们不能将文件打包到 jar 中并打开它。
  • 这是因为常规 Windows 应用程序只能打开直接位于文件系统中或可通过 URL (http) 访问的文件。 Word 确实对 JAR 文件一无所知,它所能做的最好的事情就是打开 jar 文件并显示该内容。它对内部结构一无所知,并且在该文件的某处隐藏了一个 word 文件。如果您的问题得到解决,您可以接受答案和/或对其进行评分。
猜你喜欢
  • 1970-01-01
  • 2015-12-21
  • 1970-01-01
  • 2021-12-15
  • 1970-01-01
  • 2020-10-29
  • 2021-02-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多