我有我创建的项目,它包含一个帮助按钮,可以打开带有我的文档的.pdf文件。该按钮的代码如下
URL loc = Actions.class.getResource("Documentation/test.pdf");
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + loc);
当我使用eclipse运行并执行我的应用程序并单击按钮时,它会在adobe reader中打开文档。在我通过eclipse将项目导出到Runnable JAR文件并单击按钮后它没有做任何事情。为了使这项工作,我需要添加一些东西吗?
我刚刚使用7zip打开了jar文件,我的test.pdf文件确实显示在那里。
答案 0 :(得分:0)
这可能是因为pdf文件位于jar内部,而方法getResource
返回的URL无法被外部程序识别。
您可以打印“loc
”以查看当它位于jar文件中时的URL。
答案 1 :(得分:0)
jar文件背后的默认行为和意图是将文件(Java)打包成压缩格式。如果你想拥有一个可执行类型jar,那么你需要包含一个manifest file
它指定了你的主Java类(包含main()
的类。从这里你可以编写逻辑来启动你的pdf。