Java: eseguire da codice un file jar

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
xubuntunew
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1747
Iscrizione: martedì 20 ottobre 2009, 20:57

Java: eseguire da codice un file jar

Messaggio da xubuntunew »

E' possibile richiamare un file jar dal codice di una programma Java?
Grazie in anticipo
Avatar utente
develop
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 274
Iscrizione: giovedì 19 maggio 2011, 22:42
Desktop: kde-plasma
Distribuzione: Ubuntu 14.04.3 LTS x86_64
Sesso: Maschile
Località: Brescia, Italy
Contatti:

Re: Java - eseguire da codice un file jar

Messaggio da develop »

Domanda già presente nel forum!
Risposta Ubuntu Forum
Develop :ciao:
xubuntunew
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1747
Iscrizione: martedì 20 ottobre 2009, 20:57

Re: Java - eseguire da codice un file jar

Messaggio da xubuntunew »

ho risolto in questo modo

Codice: Seleziona tutto

        try {
			
			Process proc = Runtime.getRuntime().exec("java -jar percorso/prova.jar");
	      	  } catch (IOException ex) {
	        	System.out.println("\n\n Eccezione "+ex);
	   	     }
E' possibile però a questo jar passare il valore di una stringa?
Avatar utente
develop
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 274
Iscrizione: giovedì 19 maggio 2011, 22:42
Desktop: kde-plasma
Distribuzione: Ubuntu 14.04.3 LTS x86_64
Sesso: Maschile
Località: Brescia, Italy
Contatti:

Re: Java - eseguire da codice un file jar

Messaggio da develop »

Credo di sì!
Una stringa come parametro di "prova.jar"?
Develop :ciao:
Avatar utente
ubuntumate
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1180
Iscrizione: giovedì 28 maggio 2015, 18:18
Distribuzione: Windows 7
Sesso: Maschile
Località: Milano

Re: Java - eseguire da codice un file jar

Messaggio da ubuntumate »

Come vedi exec() ha una stringa come argomento quindi basta concatenare...
Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.
ACM/IEEE Code of ethics.
xubuntunew
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1747
Iscrizione: martedì 20 ottobre 2009, 20:57

Re: Java - eseguire da codice un file jar

Messaggio da xubuntunew »

e nel main?
Avatar utente
develop
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 274
Iscrizione: giovedì 19 maggio 2011, 22:42
Desktop: kde-plasma
Distribuzione: Ubuntu 14.04.3 LTS x86_64
Sesso: Maschile
Località: Brescia, Italy
Contatti:

Re: Java - eseguire da codice un file jar

Messaggio da develop »

Develop :ciao:
xubuntunew
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1747
Iscrizione: martedì 20 ottobre 2009, 20:57

Re: Java - eseguire da codice un file jar

Messaggio da xubuntunew »

è possibile avere un esempio?
Avatar utente
ubuntumate
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1180
Iscrizione: giovedì 28 maggio 2015, 18:18
Distribuzione: Windows 7
Sesso: Maschile
Località: Milano

Re: Java - eseguire da codice un file jar

Messaggio da ubuntumate »

Con un ciclo for concateni tutti gli argomenti e li passi a exec
Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.
ACM/IEEE Code of ethics.
xubuntunew
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1747
Iscrizione: martedì 20 ottobre 2009, 20:57

Re: Java - eseguire da codice un file jar

Messaggio da xubuntunew »

ok, ma per il main?
Avatar utente
develop
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 274
Iscrizione: giovedì 19 maggio 2011, 22:42
Desktop: kde-plasma
Distribuzione: Ubuntu 14.04.3 LTS x86_64
Sesso: Maschile
Località: Brescia, Italy
Contatti:

Re: Java - eseguire da codice un file jar

Messaggio da develop »

Io avevo cercato con Google, un buon sito in prima pagina ma non ricordo quale: Link Google
Develop :ciao:
Avatar utente
ubuntumate
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1180
Iscrizione: giovedì 28 maggio 2015, 18:18
Distribuzione: Windows 7
Sesso: Maschile
Località: Milano

Re: Java - eseguire da codice un file jar

Messaggio da ubuntumate »

Te l'ho scritto sopra come fare...studia bene Java e vedrai che capirai.

Codice: Seleziona tutto

String argomenti = "";
for(String s:args)
{
  argomenti+= s;
}
......exec("java -jar prova.jar " + argomenti);
Ovviamente devi adattare la stringa argomenti a prova.jar.
Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.
ACM/IEEE Code of ethics.
xubuntunew
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1747
Iscrizione: martedì 20 ottobre 2009, 20:57

Re: Java - eseguire da codice un file jar

Messaggio da xubuntunew »

ma su quello nessun problema,
nel main del jar , main(String[] args) è sufficiente?
Avatar utente
ubuntumate
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1180
Iscrizione: giovedì 28 maggio 2015, 18:18
Distribuzione: Windows 7
Sesso: Maschile
Località: Milano

Re: Java - eseguire da codice un file jar

Messaggio da ubuntumate »

Devi metterlo nel metodo main della classe principale. Se il codice in cui usi exec() è nel main allora metti tutto insieme altrimenti crei un'istanza della classe che esegue prova. jar e passi al metodo(o al costruttore) la variabile argomenti.
Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.
ACM/IEEE Code of ethics.
xubuntunew
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1747
Iscrizione: martedì 20 ottobre 2009, 20:57

Re: Java - eseguire da codice un file jar

Messaggio da xubuntunew »

ma su questo non ci piove,
nel programma c' è un main con l' exec all' interno

Nel file jar (diverso) precedentemente creato, c' è un altro main, per prendere da qui il valore passato dal programma cosa bisogna mettere? (main(String[] args)) è sufficiente?
Avatar utente
develop
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 274
Iscrizione: giovedì 19 maggio 2011, 22:42
Desktop: kde-plasma
Distribuzione: Ubuntu 14.04.3 LTS x86_64
Sesso: Maschile
Località: Brescia, Italy
Contatti:

Re: Java - eseguire da codice un file jar

Messaggio da develop »

Si esatto!
Develop :ciao:
Avatar utente
ubuntumate
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1180
Iscrizione: giovedì 28 maggio 2015, 18:18
Distribuzione: Windows 7
Sesso: Maschile
Località: Milano

Re: Java - eseguire da codice un file jar

Messaggio da ubuntumate »

Il metodo main di prova.jar deve essere qualcosa di simile a:

Codice: Seleziona tutto

public statica void main(String[]args)
{
 if(args[0].equals("--help")
   {
     System.out.println("Messaggio");
   }
   else
   {
     .....
   }
}

Il main del programma con Runtime.getRuntime().exec() l'ho già spiegato sopra.
Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.
ACM/IEEE Code of ethics.
xubuntunew
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1747
Iscrizione: martedì 20 ottobre 2009, 20:57

Re: Java - eseguire da codice un file jar

Messaggio da xubuntunew »

mi scuso se riapro la discussione dopo un pò di tempo
E' possibile ritornare un valore dal file jar?
xubuntunew
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1747
Iscrizione: martedì 20 ottobre 2009, 20:57

Re: Java - eseguire da codice un file jar

Messaggio da xubuntunew »

nessuno?
Avatar utente
nuzzopippo
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1627
Iscrizione: giovedì 12 ottobre 2006, 11:34

Re: Java - eseguire da codice un file jar

Messaggio da nuzzopippo »

xubuntunew [url=http://forum.ubuntu-it.org/viewtopic.php?p=4827011#p4827011][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:mi scuso se riapro la discussione dopo un pò di tempo
E' possibile ritornare un valore dal file jar?
Cosa intendi far ritornare dal Jar? ... Java prevede, alla chiusura di una applicazione, la restituzione al sistema di un valore numerico tramite l'istruzione "System.exit(num)" ovvero, sempre tramite la classe System, interazioni con lo standar error, input ed output, maggiori dettagli nella docs, metodi che non ho familiari, però, potrebbero esserti utili?

[Edit] la classe Process ha i metodi "exitValue()", "getErrorStream()", "getInputStream()" e "getOutputStream()" che potrebbero essere utili per intercettare e processare eventuali valori restituiti, anche in questo caso vedere la documentazione è opportuno
Fatti non foste a viver come bruti ...
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: Google [Bot], neolight69 e 14 ospiti