0

Java Web Start 技术有一个用于创建文件关联的IntegrationService API。我的问题是是否有可能以某种方式使用此 API(可能通过在我的应用程序中包含 jnlp.jar)来创建文件关联,但没有完整的 Java Web Start 技术(没有用于初始安装的网站,该程序以传统的安装程序或作为一个简单的可执行 jar 文件)。有问题的应用程序是桌面/摇摆应用程序。

(这个问题出现在问题How to associate a file with a program in java的评论中)

4

1 回答 1

3

无需网站即可jnlp在本地使用文件,只需为and使用文件 URI 方案即可。jnlp codebasejar href

这将让您试验文件关联,但您需要先进行备份并清理 Java Preferences 缓存。

附加物:

  • 作为一个具体的例子,这jnlp将启动JFreeChart

    <?xml version="1.0" encoding="utf-8"?>
    <jnlp spec="1.0+" 
            codebase="file:///Users/trashgod/jnlp/"
            href="jfreechart-1.0.14-demo.jnlp">
        <information>
            <title>JFreeChart 1.0.14 Demo</title>
            <vendor>Object Refinery Ltd</vendor>
            <homepage href="http://www.object-refinery.com/" />
            <description>A demo for the JFreeChart class library</description>
            <description kind="short">JFreeChart demo application.</description>
            <description kind="tooltip">JFreeChart 1.0.14 Demo</description>
            <offline-allowed />
        </information>
        <resources>
            <j2se version="1.5+" initial-heap-size="12m" max-heap-size="256m" />
            <jar href="file:///opt/jfreechart/jfreechart-1.0.14-demo.jar" />
            <jar href="file:///opt/jfreechart/lib/jcommon-1.0.17.jar" />
            <jar href="file:///opt/jfreechart/lib/jfreechart-1.0.14.jar" />
        </resources>
        <application-desc main-class="demo.SuperDemo" />
    </jnlp>
    
  • <association/>标签使用这些属性mime-typeextensions作为“对 JNLP 客户端的提示,即它希望向操作系统注册作为某些扩展和某些 mime 类型的主要处理程序”。

于 2012-09-07T18:25:32.253 回答