Java 按文件类型启动外部应用程序/帮助程序的独立于平台的方式?

Java 按文件类型启动外部应用程序/帮助程序的独立于平台的方式?,java,platform-independence,Java,Platform Independence,例如,我正在处理的一个应用程序将PDF文件存储到数据库中,然后可以将它们拉回来显示。我在那里接到一个调用,使用Runtime.exec执行“cmd/c start”加上PDF文件名。适用于Windows。我更愿意找到一种独立于平台的方法(尝试通过各种操作系统的替代方法避免操作系统检测)来实现这一点,因为我们也在Solaris和Mac上运行该软件。我想看看是否有一个“正确”的答案。如果我要这样做,我会有一个OS的属性文件映射到运行所需的命令,然后在运行时解析OS 例如,在属性文件中: window

例如,我正在处理的一个应用程序将PDF文件存储到数据库中,然后可以将它们拉回来显示。我在那里接到一个调用,使用Runtime.exec执行“cmd/c start”加上PDF文件名。适用于Windows。我更愿意找到一种独立于平台的方法(尝试通过各种操作系统的替代方法避免操作系统检测)来实现这一点,因为我们也在Solaris和Mac上运行该软件。

我想看看是否有一个“正确”的答案。如果我要这样做,我会有一个OS的属性文件映射到运行所需的命令,然后在运行时解析OS

例如,在属性文件中:

windows=cmd /c start
mac=open #(I think)
linux=... etc
看看哪种方法是开放的,哪种方法是平台无关的

将关联的应用程序启动到 打开文件


这主意不错,但我想避免。这正是我想要的!我知道有一种方法可以查看桌面是否受支持。。。是否有目前不支持桌面的平台?@Brian Knoblauch-一直为我工作,但可能有一些平台我从未使用过:)到目前为止,我可以确认它在Windows和Solaris上受支持!