我有一个使用Java Web Start运行的Java应用程序(JAR文件)。就实际运行的应用程序而言,一切都很好。
什么不起作用是JWS安装的快捷方式。这是我的JNLP文件<information>
标记
<information>
<title>My App</title>
<vendor>My Company</vendor>
<homepage href="http://example.com"/>
<description>My Description</description>
<description kind="short">desc short</description>
<icon href="splash.png" kind="splash"/>
<icon kind="shortcut" href="icon.png" />
<shortcut online="false" install="true">
<desktop/>
<menu submenu="My APP"/>
</shortcut>
</information>
现在我知道一个主要问题是我们的IT政策阻止了快捷方式安装。
如果我直接从Java Cache Viewer
执行此操作,则会安装快捷方式
我尝试从JAVAWS工具中做到这一点,但这也不起作用。
javaws -verbose -import -silent -shortcut my-file.jnlp
我可以做什么,以便在部署应用程序时自动安装快捷方式?
答案 0 :(得分:1)
使用JNLP表示法创建快捷方式时也存在一些问题,所以这段代码就是这样做的:
public static final String JAVAXJNLP_INTEGRATION_SERVICE = "javax.jnlp.IntegrationService";
public static void criaAtalhosWebStart() {
IntegrationService integ;
try {
integ = (IntegrationService) ServiceManager.lookup(JAVAXJNLP_INTEGRATION_SERVICE);
if (integ != null) {
if (!integ.hasDesktopShortcut() || !integ.hasMenuShortcut()) {
integ.requestShortcut(true, true, "Shorcut Label");
}
}
} catch (UnavailableServiceException ex) {
System.out.println("Error in creating shorcut: " + ex.getMessage());
}
}
这使用JNLP集成服务,该服务由jnlp.jar提供。该jar与JRE捆绑在一起,因此您需要配置构建过程以找到它,但您无需将其提供给您的客户。