Java 桌面打开不';不适用于某些文件类型(jpg)

Java 桌面打开不';不适用于某些文件类型(jpg),java,Java,我试图利用java(1.6+)的新桌面功能,但它似乎不如旧的(肮脏的)方式工作 我在预期程序(VLC)中成功地打开了一些文件(视频ie.mov、3gp、mp4),但是,当我尝试打开jpg图像时,什么都没有发生 我已确保此文件类型与默认查看器(windows picture and fax viewer)相关联,结果是与旧的运行方法相关联: Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + fil

我试图利用java(1.6+)的新
桌面
功能,但它似乎不如旧的(肮脏的)方式工作

我在预期程序(VLC)中成功地打开了一些文件(视频ie.mov、3gp、mp4),但是,当我尝试打开jpg图像时,什么都没有发生

我已确保此文件类型与默认查看器(windows picture and fax viewer)相关联,结果是与旧的运行方法相关联:

Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler "
        + file.getAbsolutePath());
。。他工作得很好

我想
桌面
功能会有所改进吗

有人能解释我正在经历的行为,或者为我指出正确的方向,以跨平台的方式解决这个问题吗

谢谢你,保罗

编辑:


我只是在windows XP上测试这一点,并且知道上面的代码片段仅适用于windows。

如果找不到相关程序,它应该抛出IOException。是否有任何错误消息?完全没有,它会毫无例外地调用该方法,但不会发生任何情况。windows错误日志中没有任何内容。也许您应该尝试使用管理员权限运行java程序。。。或者尝试将JPG与另一个第三方查看器关联。我怀疑Windows正在接收呼叫,但拒绝允许您的程序调用它。“当我尝试打开jpg图像时”,该文件是
.jpg
扩展名,而不是
.jpeg
.jpe
?(复制/粘贴的)文件名是什么?