[RISOLTO][Java] Esiste un modo per distribuire con eseguibili e non class?

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Scrivi risposta
Avatar utente
nifriz
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 460
Iscrizione: mercoledì 28 novembre 2007, 14:27

[RISOLTO][Java] Esiste un modo per distribuire con eseguibili e non class?

Messaggio da nifriz »

Ciao a tutti,
mi sto da poco cimentando con java,la mia domanda come da oggetto è:
Ottenuti i miei file .class, esiste un modo di creare un eseguibile che lanci i programmi? O sono obbligato a fare uno script che lanci:

Codice: Seleziona tutto

java NomeClasse.class
E inoltre, se ho una classe che lancio da consolle che legge parametri elabora é butta fuori un output, é possibile chiamarla in qualche modo all'interno di un HTML affinché venga eseguita? (Spero sia chiara la domanda  :) )

Grazie a tutti  (good)
Ultima modifica di nifriz il martedì 19 febbraio 2008, 20:14, modificato 1 volta in totale.
Rock is the way... Metal is better ;)
Supporta come me http://www.warbears.com - http://www.skebby.it - http://www.dagheisha.com
Avatar utente
Arcovoltaico77
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1082
Iscrizione: giovedì 26 luglio 2007, 9:52

Re: [Java] Esiste un modo per distribuire con eseguibili e non class?

Messaggio da Arcovoltaico77 »

se vuoi un eseguibile "per windows" , quindi un file .exe che ti incapsula il comando da mettere nello script, gli import delle librerie, il controllo del numero di istanze del programma che stanno girando, ecc...
guarda "jsmooth" , è open source e libero anche per scopi commerciali...

per la seconda domanda (quella dell' html) , c'è un tipo di applicazioni java chiamate "java applet" , che serve proprio allo scopo che cerchi... ci vorrebbe un libro per parlarne esaurientemente, quindi qui non mi dilungo...

(b2b)
" Usare Linux é come mangiare dalla suocera, mangi bene e non spendi nulla! "
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: [Java] Esiste un modo per distribuire con eseguibili e non class?

Messaggio da Massimo S. »

Ci sono varie possibilità...

Si può creare un file .jar che contiene tutte le classi e si può specificare (non chiedermi come che non mi ricordo) quale è la classe main.
A quel punto con

Codice: Seleziona tutto

java -jar file.jar
l'applicazione dovrebbe partire.

Si può anche associare l'estensione .jar in modo che i file .jar partano quando si fa doppio click su di essi.

Poi Sun ha un tecnologia chiamata "Java Web Start" che permette di scaricare e far partire applicazioni dalla rete, ma non ne so molto, se ti interessa fai una ricerca.


Riguardo all'html, oltre ad usare le applet, che consiste nel demandare una regione rettangolare della pagina html al controllo di un "cosa" java detta applet (questo richiede un plugin java per il browser perché il codice java viene eseguito sul client), è possibile realizzare una web-application con la tecnologia Servlet/Jsp
In quest'ultimo caso il codice è eseguito sul server e viene restituito solo html al browser che non ha dunque bisogno di plugin.
Sul server però devi metter un Servlet/Jsp Container come Apache Tomcat
Avatar utente
nifriz
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 460
Iscrizione: mercoledì 28 novembre 2007, 14:27

Re: [Java] Esiste un modo per distribuire con eseguibili e non class?

Messaggio da nifriz »

Ok, quindi per gli esegubili probabilmente é meglio che faccio un scriptino, dato che un comando vale l'altro a questo punto ;)

Per l'html quindi se non ho capito male dovrei convertire la mia applicazione in applet java, corretto? Bé vedo un pò come fare, grazie mille!  (b2b)
Rock is the way... Metal is better ;)
Supporta come me http://www.warbears.com - http://www.skebby.it - http://www.dagheisha.com
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: [Java] Esiste un modo per distribuire con eseguibili e non class?

Messaggio da Massimo S. »

nifriz ha scritto: Ok, quindi per gli esegubili probabilmente é meglio che faccio un scriptino, dato che un comando vale l'altro a questo punto ;)
Effettivamente questa è un po una piccola carenza della tecnologia java, comunque molti applicativi fatti in java forniscono uno script per l'avvio come quello di cui parli (di solito due, uno .sh per *nix e uno .bat per win)
Per l'html quindi se non ho capito male dovrei convertire la mia applicazione in applet java, corretto? Bé vedo un pò come fare, grazie mille!  (b2b)
Dipende da quello che devi fare, tieni in mente che quando si parla di html si parla di client/server, anche se tu quando fai le tue prove hai tutto sullo stesso pc, nulla vieta che il browser che richiama la tua pagina html sia su un'altra macchina.
Per esempio i dati di input da dove li leggi? Se li leggi da un file che risiede nel pc "server" e se uno da un'altra macchina si collega col browser, scaricherà anche l'applet che verrà eseguita sulla sua macchina e non potrà accedere al file perché fisicamente residente su un altro pc
Avatar utente
nifriz
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 460
Iscrizione: mercoledì 28 novembre 2007, 14:27

Re: [Java] Esiste un modo per distribuire con eseguibili e non class?

Messaggio da nifriz »

No é un applicazione statica... x farti capire, é come se volessi mettere una calcolatrice fatta in java all'interno di una pagina HTML ... solo che la mia applicazione al momento é x consolle, nn possiede una GUI grafica...
Rock is the way... Metal is better ;)
Supporta come me http://www.warbears.com - http://www.skebby.it - http://www.dagheisha.com
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: [Java] Esiste un modo per distribuire con eseguibili e non class?

Messaggio da Massimo S. »

nifriz ha scritto: No é un applicazione statica... x farti capire, é come se volessi mettere una calcolatrice fatta in java all'interno di una pagina HTML ... solo che la mia applicazione al momento é x consolle, nn possiede una GUI grafica...
Allora si, puoi fare una applet.
Conosci un minimi di awt/swing?
Avatar utente
nifriz
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 460
Iscrizione: mercoledì 28 novembre 2007, 14:27

Re: [Java] Esiste un modo per distribuire con eseguibili e non class?

Messaggio da nifriz »

No assolutamente, in java sono un newbie... sto a rilento facendo delle prove, ma x ora mi son limitato a cercare di fare una mini applicazione console, che passati dei parametri li manipola un pò, giusto x capire meglio la sintassi e tutto il resto...
Rock is the way... Metal is better ;)
Supporta come me http://www.warbears.com - http://www.skebby.it - http://www.dagheisha.com
Avatar utente
Massimo S.
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1931
Iscrizione: giovedì 28 settembre 2006, 14:34

Re: [Java] Esiste un modo per distribuire con eseguibili e non class?

Messaggio da Massimo S. »

nifriz ha scritto: No assolutamente, in java sono un newbie... sto a rilento facendo delle prove, ma x ora mi son limitato a cercare di fare una mini applicazione console, che passati dei parametri li manipola un pò, giusto x capire meglio la sintassi e tutto il resto...
awt swing sono le principali librerie grafiche con cui creare GUI per applicazioni desktop in Java.
ti serviranno anche per fare un applet, che da un certo punto di vista è una GUI desktop incastonata dentro una pagina html


Se invece usi servlet/jsp per l'interfaccia utente devi conoscere html, css ed eventualmente javascript (da non confondere assolutamente con java)
Avatar utente
nifriz
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 460
Iscrizione: mercoledì 28 novembre 2007, 14:27

Re: [Java] Esiste un modo per distribuire con eseguibili e non class?

Messaggio da nifriz »

OK grazie mille! Sei stato gentilissimo! Metto risolto nel topic!  ;)
Rock is the way... Metal is better ;)
Supporta come me http://www.warbears.com - http://www.skebby.it - http://www.dagheisha.com
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 4 ospiti