使用JNLP API在. JNLP文件的资源下获取jar



是否有办法在Java WebStart的.jnlp文件中获得<resources>下引用的JAR文件?我认为JNLP API可以提供帮助,但没有找到任何方法。什么好主意吗?

的例子:

[...]
<resources>
    <j2se version="1.6.0+" />
    <jar href="../lib/wsfacade.jar"/>
    <jar href="../lib/resources.jar"/>
  </resources>
[...]

我想获得wsfacade.jar的路径,这是可能的吗?

来自JNLP API的DownloadService2接口可以为您提供应用程序的资源:

DownloadService2 service = (DownloadService2) ServiceManager.lookup("javax.jnlp.DownloadService2");
ResourceSpec alljars = new ResourceSpec(".*", ".*", DownloadService2.JAR)
ResourceSpec[] results = service.getCachedResources(alljars);
for (ResourceSpec spec : results) {
    System.out.println(spec.getUrl());
}

参考:

  • http://download.oracle.com/javase/6/docs/technotes/guides/javaws/developersguide/examples.html DownloadService2

  • http://download.oracle.com/javase/6/docs/jre/api/javaws/jnlp/javax/jnlp/DownloadService2.html

最新更新