Java 在JDK7中哪里可以找到JNLPAPIJAR?

Java 在JDK7中哪里可以找到JNLPAPIJAR?,java,jnlp,java-web-start,Java,Jnlp,Java Web Start,可能重复: 对于jdk 1.6,可以在此处找到(根据): 但是,我在jdk 7主页中没有看到这个目录 它到哪里去了?在Java7中javax.jnlp.包是jre的一部分,可以在以下路径的javaws.jar中找到 C:\Program Files\Java\jre7\lib\javaws.jar 如果使用maven: <dependency> <groupId>javax.jnlp</groupId> <artifactId>

可能重复:

对于jdk 1.6,可以在此处找到(根据):

但是,我在jdk 7主页中没有看到这个目录


它到哪里去了?

在Java7中javax.jnlp.包是jre的一部分,可以在以下路径的
javaws.jar中找到

C:\Program Files\Java\jre7\lib\javaws.jar
如果使用maven:

<dependency>
    <groupId>javax.jnlp</groupId>
    <artifactId>jnlp-api</artifactId>
    <version>7.0</version>
    <scope>system</scope>
    <systemPath>${java.home}/lib/javaws.jar</systemPath>
</dependency>

javax.jnlp

有人很好,在maven repos中放了一份副本(我想如果oracle更新了他们的副本,我们不能确定它是否落后于他们):


org.codehaus.mojo.webstart
webstart jnlp servlet
1.0-6.0.02_ea_b02.2

编辑:正如Zalumon在回答中所说,javax.jnlp.*api也可以在示例包中找到。从那里下载并将jnlp.jar添加到类路径中,与我上面建议的添加javaws.jar相比,应该建议您这样做。

谢谢您的提示-我不知道有单独的示例下载

下面是我最后做的事情(请注意,我有自己的远程存储库,所以这可能不适用于您):

我从Oracle的网站下载了jdk7示例。我在里面找到了一个jnlp.jar,它只包含jnlp API:

sample\jnlp\servlet\jnlp.jar
我将其作为jnlp-api-1.7.jar部署到我的私有远程存储库(artifactory),然后像这样配置pom.xml(“提供”范围,因为在运行时,这些类由javaws.jar提供,正如Aksel Willgert所指出的):


javax.jnlp
JNLPAPI
1.7
假如
为完整起见,请提供一个部署到artifactory的屏幕截图:


如果它是JRE的一部分,那么为什么要使用特殊技巧使其成为maven依赖项呢?好问题,即使它是JRE的一部分,我也必须将其添加到eclipse中的项目类路径中,以便能够针对javax.jnlp.*packages API进行编码。当应用程序以javaws的形式启动时,jre/系统为它们提供了这些选项。听起来好像是因为“javaws”命令是jre的一部分,但jnlp类不在默认类路径上。那么,也许只是一个API maven工件?我正在比较
org.codehaus.mojo.webstart:webstart jnlp servlet:1.0-6.0.02_ea_b02.2
org.codehaus.mojo.webstart jnlp servlet:webstart jnlp servlet:1.0-beta-4
中的代码,看起来这两个版本中的后一个才是应该使用的版本。它似乎得到了维护,因为我一眼就能看到其中的几个bug修复。
<dependency>
    <groupId>org.codehaus.mojo.webstart</groupId>
    <artifactId>webstart-jnlp-servlet</artifactId>
    <version>1.0-6.0.02_ea_b02.2</version>
</dependency>
sample\jnlp\servlet\jnlp.jar
<dependency>
  <groupId>javax.jnlp</groupId>
  <artifactId>jnlp-api</artifactId>
  <version>1.7</version>
  <scope>provided</scope>
</dependency>