|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Sep 2003
Città: Salerno
Messaggi: 1356
|
[Java] Parametri a file .jar
Salve ragazzi, ho un problema..
Ho creato in java una piccola form che si connette (via JDBC) ad un database è ne visualizza il contenuto. L'unica cosa che fa è creare una query con il nome di un comune specifico, il mio problema è che devo fare n file .jar per n comuni, vorrei creare un unico file .jar che prenda un argomento da fuori, è che lo passi al args[] del main, con eclipse riesco a farlo ma creando il jar da windows non so proprio come fare, dovrei creare un collegamento al file? è poi come faccio a passare un parametro? Scusate per il post un pò contorto.. ![]() Grazie a chi mi dedica un po di tempo.. ![]()
__________________
[PC] E7200 + Arock p43r1600-110 db + 2 x 1gb ddr800 corsair xmms2 + powercolor hd4670 + segate 500gb. iPhone 4 ![]() Concluso positivamente con : maxb81,echirulli,aflexxx1980,tom1,tensor,tetz,CaFFeiNe,Morosito,hakermax91,jagemal,dominik68. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Potresti aprire una finestrella di dialogo che richiede il nome del comune e poi lancia il programma. Non è complicato da fare.
Codice:
import javax.swing.*; public class Main { public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { String nome = JOptionPane.showInputDialog(null, "Nome del comune?"); startApplication(nome); }}); private static void startApplication(final String nome) { Runnable task = new Runnable() { public void run() { //fa quello che faceva il main }}; new Thread(task, "Application runner").start(); } }
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Sep 2003
Città: Salerno
Messaggi: 1356
|
Quote:
![]()
__________________
[PC] E7200 + Arock p43r1600-110 db + 2 x 1gb ddr800 corsair xmms2 + powercolor hd4670 + segate 500gb. iPhone 4 ![]() Concluso positivamente con : maxb81,echirulli,aflexxx1980,tom1,tensor,tetz,CaFFeiNe,Morosito,hakermax91,jagemal,dominik68. |
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
java -jar file.jar argomenti......
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
E non puoi lanciare il jar con un parametro? Un po' come i collegamenti ad un eseguibile, prima c'è il percorso dell'eseguibile e poi la lista di parametri. L'esecuzione del collegamento causa l'esecuzione del programma collegato con il passaggio dei parametri specificati nel collegamento.
Quei parametri arrivano al programma java come stringhe nell'array del metodo main. Detto altrimenti, se dico: java Main Foggia o java -jar Programma.jar Foggia o javaw Programma.jar Foggia in tutti e tre i casi il primo componente dell'array di stringhe parametro del metodo main è Foggia.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: Sep 2003
Città: Salerno
Messaggi: 1356
|
Quote:
Grazie ![]()
__________________
[PC] E7200 + Arock p43r1600-110 db + 2 x 1gb ddr800 corsair xmms2 + powercolor hd4670 + segate 500gb. iPhone 4 ![]() Concluso positivamente con : maxb81,echirulli,aflexxx1980,tom1,tensor,tetz,CaFFeiNe,Morosito,hakermax91,jagemal,dominik68. |
|
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Il "Bis" in PGI significa che io ripeto sempre quello che dice chi risponde prima di me. E' un vezzo personale, che volete farci.
Ora e sempre, vaffhttp.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Sep 2003
Città: Salerno
Messaggi: 1356
|
Grazie!! Funziona perfettamente.. Solo una cosa ogni volta che clicco sul collegamento parte anche la shell di windows, c'è un modo per evitarlo?
__________________
[PC] E7200 + Arock p43r1600-110 db + 2 x 1gb ddr800 corsair xmms2 + powercolor hd4670 + segate 500gb. iPhone 4 ![]() Concluso positivamente con : maxb81,echirulli,aflexxx1980,tom1,tensor,tetz,CaFFeiNe,Morosito,hakermax91,jagemal,dominik68. |
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
javaw invece di java
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Mhhhh... non so, forse è per via di quel sistema hotlink che non conosco. A me i collegamenti ai jar partono senza console, com'è normale che sia per windows con javaw.exe (e lo stesso si fa in Linux con java, anche se non ricordo come ora).
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Sep 2003
Città: Salerno
Messaggi: 1356
|
Adesso funziona tutto... Alla fine ho solo creato un collegamento al file .jar e nella destinazione ho messo nome.jar parametro è mi funziona perfettamente.. Spero solo che se lo passo in un altro pc funzioni correttamente senza che metto mano alle varie jdk,jre
![]() Grazie per l'aiuto siete sempre preparatissimi su questo forum ![]()
__________________
[PC] E7200 + Arock p43r1600-110 db + 2 x 1gb ddr800 corsair xmms2 + powercolor hd4670 + segate 500gb. iPhone 4 ![]() Concluso positivamente con : maxb81,echirulli,aflexxx1980,tom1,tensor,tetz,CaFFeiNe,Morosito,hakermax91,jagemal,dominik68. |
![]() |
![]() |
![]() |
#12 |
Member
Iscritto dal: Jan 2006
Messaggi: 65
|
Salve siccome mi è di vitale interesse la vostra discussione in quanto anche io mi trovo ad avere un caso simile a tony.www e avendolo risolto vorrei sapere com'è che richiami la classe ora perche io facendo
java Nomeclasse parametro1 parametro2 e parametro3 mi viene generato un errore che indica java.lang.NoclassDefFoundError e che il nome della classe è sbagliato quando in realtà non e' sbagliato per niente qualcuno di voi sa darmi una risposta grazie |
![]() |
![]() |
![]() |
#13 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#14 |
Member
Iscritto dal: Jan 2006
Messaggi: 65
|
Grazie per la risposta alla fine dopo svariati tentativi sono riuscito a capire come settare il classpath il problema ora pero me lo tovo piu avanti perchè ci sono altre classi richiamate al suo intenro.Una di queste ha bisogno della libreria di log4j...ora per settare la lib cosa devo usare
-agentlib:<libname>[=<options>] load native agent library <libname>, e.g. -agentlib:hprof see also, -agentlib:jdwp=help and -agentlib:hprof=help oppure... -agentpath:<pathname>[=<options>] load native agent library by full pathname |
![]() |
![]() |
![]() |
#15 |
Member
Iscritto dal: Jan 2006
Messaggi: 65
|
utilizzando questa istruzione
Path della libreiria: \Documents and Settings\Cartella1\Cartella2\Cartella3\lib Path della classe: \Documents and Settings\Cartella1\Cartella2\Cartella3\src\Cartella4\Cartella5\Cartella6\Cartella7\Cartella8\CLass questi sono i percorsi a partire da C:\ Ora avendo questi due path a vostra disposizione come custruireste le informazioni per lanciare il comando java che setti appunto il classpath e la libreria ?? io ho provato in tutti i modi ottenendo questo messaggio d'errore Codice:
Error occurred during initialization of VM Could not find agent library in abslolute path: C:\Cartella1\Cartella2\Cartella3\lib mi affido a voi grazie in aticipo per le risposte |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:04.