Ret*_*ner 9 java jnlp java-web-start
可能重复:
在JDK 1.7中找不到jnlp.jar
对于jdk 1.6,它可以在这里找到(根据我在哪里可以下载JNLP.jar):
${java.home}/sample/jnlp/servlet/jnlp.jar
Run Code Online (Sandbox Code Playgroud)
但是,我在jdk 7 home中看不到这个目录.
它去了哪里?
Aks*_*ert 11
在java 7中,javax.jnlp.*包是jre的一部分,可以javaws.jar在以下路径中找到
C:\Program Files\Java\jre7\lib\javaws.jar
Run Code Online (Sandbox Code Playgroud)
如果使用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>
Run Code Online (Sandbox Code Playgroud)
如果你在jnlp-download-servlet和jnlp-servlet.jar之后
早期作为jdk的一部分提供的样本必须从oracle现在单独下载: 向下滚动到"演示和样本"
有人很好,并在maven repos中放了一份副本(猜测我们不能确定如果oracle更新他们不会落后......):
<dependency>
<groupId>org.codehaus.mojo.webstart</groupId>
<artifactId>webstart-jnlp-servlet</artifactId>
<version>1.0-6.0.02_ea_b02.2</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
编辑:正如Zalumon在他的回答中所述,javax.jnlp.*api也可以在samples-package中找到.下载这个并将jnlp.jar添加到类路径中应该推荐为选择添加javaws.jar,如上所述.
感谢您的所有提示 - 我不知道有单独的样本下载.
所以这就是我最终做的事情(注意我有自己的远程存储库,所以这可能不适用于你):
我从Oracle的网站上下载了jdk7样本.在里面我找到了一个jnlp.jar,它只包含jnlp API:
sample\jnlp\servlet\jnlp.jar
Run Code Online (Sandbox Code Playgroud)
我将此部署到我的私有远程存储库(artifactory)为jnlp-api-1.7.jar,然后像这样配置pom.xml('提供'范围,因为在运行时这些类由javaws.jar提供,如Aksel所指出的Willgert):
<dependency>
<groupId>javax.jnlp</groupId>
<artifactId>jnlp-api</artifactId>
<version>1.7</version>
<scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
为了完整起见,部署到神器的屏幕截图:

| 归档时间: |
|
| 查看次数: |
10733 次 |
| 最近记录: |