Domanda

Sono il debug di un'applicazione jnlp, e ho usato per essere in grado di eseguire il debug remoto attraverso eclissi, ma ora non più.

il comando per avviarlo è:

 /usr/java/jdk1.6.0_14/jre/bin/java -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=1445 -Djnlpx.heapsize=64m,512m -DtrustProxy=true -Xverify:remote -Djava.security.policy=/lib/security/javaws.policy -Dfile.encoding=UTF-8 -Xbootclasspath/a:/usr/java/jdk1.6.0_14/jre/lib/deploy.jar:/usr/java/jdk1.6.0_14/jre/lib/javaws.jar:/usr/java/jdk1.6.0_14/jre/lib/plugin.jar -classpath /usr/java/jdk1.6.0_14/jre/lib/deploy.jar com.sun.javaws.Main launch.jnlp
Listening for transport dt_socket at address: 1445

e il problema è che quando allego il debugger Eclipse, si spegne e si riavvia; così il debugger attribuisce al primo processo; e quando questo muore così fa il debugger.

lo script debugger in realtà non ha importanza; Poiché il processo di jnlp riparte sul proprio prima che il debugger mai viene lanciato se sospendere = n.

Ho provato tracciamento, ma l'opzione -XX: TraceSupport = true (e altre varianti che ho provato) causa un errore di JVM.

Sto usando Fedora 11, Eclipse IDE Java EE per gli sviluppatori web. (Build ID: 20.090.621-0.832)

Mi sto chiedendo se qualcuno sa come risolvere questo problema, o almeno come accendere una migliore registrazione (vale a dire, catturare tutta l'uscita della console in un registro, in modo che possa dare uno sguardo alla prima console che lampeggia up sul mio schermo per un millisecondo)

grazie!

È stato utile?

Soluzione 2

Il mio capo ha trovato la risposta:

  

Sembra che il tag “<property>”   nel file JNLP sono più restrittive   con il più recente di JRE. Secondo il    Sun documentazione :

     

“Per un'applicazione non attendibile, il sistema   proprietà impostate nel file JNLP sarà   essere impostato solo da Java Web Start se   sono considerati sicuri, o se il   nome di proprietà inizia con "jnlp." o   "javaws". “.

     

Sembra che lo stato non attendibile   fa sì che l'applicazione di lanciare un   seconda volta con l'appropriato   proprietà.

dopo aver ricompilato e la fissazione di un problema si spera non correlato in cui a capo causavano l'APPLICATION.JNLP firmato e il launch.jnlp di non apparire come "lo stesso", il debugger sta lavorando.

Altri suggerimenti

post sul blog ha variabili d'ambiente voi può impostare per eseguire il debug jnlp. Questo ha sempre lavorato per me.

  set JAVAWS_TRACE_NATIVE=1

  set JAVAWS_VM_ARGS=-Xdebug -Xnoagent -Djava.compiler=NONE 
            -Xrunjdwp:transport=dt_socket,address=8989,server=y,suspend=y
  javaws http://server:port/descriptor.jnlp
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top