2012-11-25 8 views

risposta

6

Grazie per tutti i suggerimenti: non ero a conoscenza del fatto che per i campioni è disponibile un download separato.

Così qui è quello che ho finito per fare (notare che io ho la mia repository remoto, quindi questo potrebbe non applicarsi a voi):

Ho scaricato i campioni jdk7 dal sito di Oracle. Dentro ho trovato una jnlp.jar, che contiene solo il JNLP API:

sample\jnlp\servlet\jnlp.jar 

questo ho schierato al mio repository remoto privato (Artifactory) come jnlp-api-1.7.jar e quindi configurato il pom.xml in questo modo ('disponibile' ambito in quanto in fase di esecuzione queste classi sono forniti da javaws.jar, come sottolineato da Aksel Willgert):

<dependency> 
    <groupId>javax.jnlp</groupId> 
    <artifactId>jnlp-api</artifactId> 
    <version>1.7</version> 
    <scope>provided</scope> 
</dependency> 

E per completezza, un'immagine della distribuzione per Artifactory:

10

in Java 7 javax.jnlp * pacchetti sono parte della JRE e possono essere trovati nella javaws.jar nel seguente percorso

C:\Program Files\Java\jre7\lib\javaws.jar 

Se si utilizza 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> 

Se sei dopo jnlp-download-servlet e jnlp-servlet.jar

I campioni e Arlier fornito come parte del JDK deve essere scaricato separetlely da Oracle ora: Scroll down to "demos and samples"

qualcuno è stato bello e mettere una copia in pronti contro termine Maven (immagino non possiamo essere sicuri che non è in ritardo se gli aggiornamenti Oracle loro ..):

<dependency> 
    <groupId>org.codehaus.mojo.webstart</groupId> 
    <artifactId>webstart-jnlp-servlet</artifactId> 
    <version>1.0-6.0.02_ea_b02.2</version> 
</dependency> 

Edit:. Come Zalumon afferma nella sua risposta alla javax.jnlp * API può anche essere trovato nei campioni-package. Scaricando questo e aggiungendo jnlp.jar al classpath da lì dovrebbe essere raccomandato come opzionato all'aggiunta di javaws.jar come suggerito sopra.

+0

Se si tratta di una parte del JRE, allora perché fare trucchi speciali per renderlo una dipendenza di esperti? –

+0

Buona domanda, Anche se fa parte del jre, ho dovuto aggiungerlo al classpath del progetto in eclipse per poter codificare verso javax.jnlp. * Package API. Quando l'app viene avviata come javaws, il jre/sistema li ha forniti. –

+0

Sembra che il comando "javaws" faccia parte di JRE, ma che le classi jnlp non si trovino sul percorso di classe predefinito. Forse solo un artefatto di API Maven allora? –