我创建了一个使用 Java Web Start 启动的 NetBeans 平台应用程序。我使用 Netbeans 6.8 中的“Build JNLP Application”命令构建了 WAR 文件。
我已将桌面快捷方式和菜单项添加到 JNLP 文件,但由于某种原因,这些不是在应用程序启动时创建的。
但是,当我去:
控制面板 -> Java -> 临时
Internet 文件 -> 查看 -> 选择我的
应用程序>单击“安装快捷方式”
到选定的应用程序'
桌面和菜单快捷方式已正确创建。
另外,在 Java 控制台中,“快捷方式创建”选项设置为以下内容(我认为是默认值):
以下是我的 JNLP 文件的片段:
<jnlp spec="6.0+" codebase="$$codebase">
<information>
<title>${app.title}</title>
<vendor>SomeVendor (Pty) Ltd</vendor>
<description>Some description</description>
<icon href="${app.icon}"/>
<shortcut online="true">
<desktop/>
<menu submenu="MyApp"/>
</shortcut>
</information>
...
我很困惑。有人对此有解释吗?
谢谢
PS 这适用于 Windows XP 和 Windows 7。NetBeans 版本:6.8
我设法使用 javax.jnlp.IntegrationService(自 JDK 6.1.18 起可用)解决了这个问题。
该类可以在 JDK 示例目录中的 jnlp.jar 中找到:
/sample/jnlp/servlet/jnlp.jar
以下代码确保创建桌面快捷方式和菜单快捷方式:
private void createShortcuts() {
IntegrationService vIntegrationService = null;
try {
vIntegrationService = (IntegrationService) ServiceManager.lookup("javax.jnlp.IntegrationService");
if (!vIntegrationService.hasDesktopShortcut() || !vIntegrationService.hasMenuShortcut()) {
vIntegrationService.requestShortcut(true, true, "App Menu Name");
}
} catch(UnavailableServiceException ex){
ex.printStackTrace();
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)