PDA

View Full Version : Esecuzione di un applicazione


cichis1
02-07-2003, 20:21
In Java non esiste il .exe se non sbaglio. Al suo posto vienne creato un file .class. Ma quando voglio usare un programma su un'altro computer, come faccio ad aprirlo?devo avere per forza un interprete su tutti i computer dove voglio usare il programma? :confused:

recoil
02-07-2003, 20:45
eh si devi avere la Java Virtual Machine per eseguire un class.
è la filosofia di Java dopotutto... sei indipendente dal SO ma devi avere l'interprete dato che il class non è linguaggio macchina

cichis1
03-07-2003, 18:34
e sai dirmi dove posso trovarla?

kingv
04-07-2003, 08:32
Originally posted by "cichis1"

e sai dirmi dove posso trovarla?


su java.cun.com oltre all' sdk che ti serve per compilare trovi anche il runtime (JRE) che ti serve per eseguire (se non hai il jdk, in cui e' incluso).
E' piu' leggero (mi sembra una decina di mega di downlaod)


l'ultima release e' la 1.4.2

http://java.sun.com/j2se/1.4.2/download.html

cichis1
04-07-2003, 11:00
Però devo farlo sempre sotto dos?

PGI
04-07-2003, 12:30
Puoi impacchettare la tua applicazione in un file jar eseguibile, poi sotto Windows dovrebbe partire con un doppio click perchè è associata a "javaw.exe", omologo di "java.exe" solo che non apre il prompt del dos.
Per farlo devi includere nel jar un file manifesto che abbia questo contenuto minimo
---------------------------
Main-Class: nomepackage.nomedellaclassecolmain

---------------------------
Trattini esclusi, è importante che l'istruzione termini con un break line.
Salvi il manifesto (quanlunque estensione, di solito txt o mf) poi da linea di comando impacchetti il tutto:

jar mcf Manifesto.txt NomePacchetto.jar directorypackage/ [invio]

se non hai usato un package

jar mcf Manifesto.txt NomePacchetto.jar Classe1.class Classe2.class ... [invio]

A quel punto ti ritrovi con un file jar NomePacchetto.jar col quale puoi lanciare l'applicazione senza passare per la linea di comando.

Ciao.

cichis1
05-07-2003, 13:34
Ho provato però quando eseguo mi dice:

Failed to load Main-Class manifest attribute from
finestramenu.jar

cosa ho sbagliato?

PGI
05-07-2003, 13:54
Quel messaggio significa che ha trovato un file Manifest ma quel file non contiente l'attributo "Main-Class".

Ricorda che la riga "Main-Class: nomepackage.nomeclass" deve terminare con un'interruzione di linea ([invio] per esser chiari). In sostanza il tuo file manifest deve avere due righe, una con l'attributo Main-Class e l'altra vuota.

Allego un file "Manifest.txt", probabilmente il file più corto del mondo.
Quel file contiene l'attributo Main-Class di un'applicazione (non inserita in una package) dove il metodo main è inserito in una classe il cui codice sorgente è "Prova.java". Per un'applicazione così il file manifesto minimo possibile è esattamente così (nota che ci sono due linee di testo, l'ultima vuota).

Per avere il messaggio completo di errore lancia il file *.jar da riga di comando:

java -jar NomeFile.jar

PS. Il file non vuole allegarlo :mad: ...
comunque è così...senza la prima linea vuota...il fulgido esempio è andato a ramengo...


Main-Class: Prova