Salve ragazzi avevo un dubbio su java:
ho creato una applicazione volevo sapere se era possibile ricavare il nome dell'applicazione che ho mandato in esecuzione e stamparla su System.out
Grazie in anticipo! ciao!
Salve ragazzi avevo un dubbio su java:
ho creato una applicazione volevo sapere se era possibile ricavare il nome dell'applicazione che ho mandato in esecuzione e stamparla su System.out
Grazie in anticipo! ciao!
In Java non c'è un concetto ben definito di "nome della applicazione". Le classi hanno un nome ... un file jar ha un nome (il file stesso). Ma non esiste un punto o sistema per definire in modo "standard" un nome di applicazione.Originariamente inviato da deltacobra
ho creato una applicazione volevo sapere se era possibile ricavare il nome dell'applicazione che ho mandato in esecuzione e stamparla su System.out
Quindi o metti una costante (es. nella classe che ha il main() se applicazione standalone) del tipo:
public static final String NOME_APPLICAZIONE = ".....";
Oppure dovresti precisare cosa intendi per "ricavare il nome dell'applicazione".
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Nel senso ho una applicazione che ho compilato con Netbeans.
Questa applicazione ha un nome ad esempio "Galleria.jar".
C'è con il codice java il modo di ricavare il nome dell'applicazione ---->"Galleria.jar"?
Spero di essere stato più chiaro. Grazie per la risposta![]()
Se intendi il nome del jar innanzitutto precisiamo una cosa. I nomi dei jar non hanno importanza a livello "formale" per Java. L'importante, in generale, è che i jar necessari siano "in classpath".Originariamente inviato da deltacobra
Questa applicazione ha un nome ad esempio "Galleria.jar".
C'è con il codice java il modo di ricavare il nome dell'applicazione ---->"Galleria.jar"?
Se tu lanci il tuo jar con:
java -jar Galleria.jar
potresti rinominarlo in pippo.jar e lanciando
java -jar pippo.jar
la tua applicazione partirebbe e funzionerebbe esattamente come prima.
Quindi a dire il vero il nome del jar non è certo un modo formale e "standard" per dedurre un nome di applicazione. Tuttavia se vuoi sapere il nome del jar, si può fare ma dipende appunto da come si lancia la applicazione.
Se lanci la applicazione con: java -jar archivio.jar
Allora avendo usato l'opzione -jar, il classpath principale è composto solo da quel jar e quindi nella system property java.class.path c'è il nome del jar (con path se nel lancio hai messo un path perché il jar è posizionato altrove rispetto alla directory corrente).
Per ottenerla: System.getProperty("java.class.path")
E comunque, ripeto: questo non è certo un modo affidabile e uniforme per definire un nome di applicazione. Meglio se lo "cabli" all'interno di una tua classe.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Grazie mille era proprio quello che mi serviva!!!!!
Domanda:
Ma se usi System.getProperty("java.class.path") non ti da non il singolo ma l'elenco dei jars dell'applicazione di cui sopra ?
Per il resto sarei d'accordo con te, meglio usare un parametro di configurazione.