如何使Java应用程序直接打开文件。例如右键单击文件或目录,然后单击“使用mytool打开”

时间:2012-03-02 11:28:20

标签: java deployment operating-system integration file-association

我有一个关于Java应用程序及其与整体操作系统(Windows,Linux和Mac)交互的一般性问题。

如果我的目录中包含与特定应用程序相关的特定文件集,是否可以在OS菜单中添加上下文项,以便用户直接使用 my Java应用程序?

我一直试图找到答案,但没有发现任何相关内容。

谢谢!

2 个答案:

答案 0 :(得分:1)

使用Java Web Start部署应用程序。它提供了许多不错的功能,包括注册文件类型的兴趣(在JNLP启动文件中)。有一个演示。在应用程序所在的JNLP file API example中。注册了对...的兴趣。

  

..内容类型.zzz的文件扩展名text/sleepytime(只是一种不太可能与现有文件关联冲突的文件类型)。

尝试沙盒版本,它实际上会提示用户是否进行文件关联。在一个值得信赖的应用程序中,它将继续发挥作用。试图成功。

您还可以使用IntegrationService控制程序中的文件类型关联(我没有时间试验该服务,因此还没有演示。)

使用JWS建立文件关联应该适用于Windows,* nix& OS X。

答案 1 :(得分:0)

修改

Install4j是一种商业产品,用于为我的Java应用程序创建跨平台安装程序。它能够为不同的操作系统进行文件关联。


假设Windows ....

这个问题不是特定于java的。要在Windows中执行此操作,您需要修改注册表。

执行此操作的好方法是使用NSIS

等安装程序工具

在安装脚本中,您可以修改注册表:See Ref

最后,请参阅此文章,了解要编辑的注册表项以获取此功能:http://www.howtogeek.com/howto/windows-vista/add-any-application-to-the-desktop-right-click-menu-in-vista/

这些键可能会在不同版本的Windows之间发生变化。