2013-05-14 12 views
5

Comincerò col dire di Im su Windows 7.Esecuzione di un file .jar in un prompt dei comandi, da doppio clic

ho creato un file .jar che esegue bene dalla riga di comando utilizzando il - Java - barattolo myJar.jar approccio

Ma quello che sto cercando è quello di essere in grado di fare doppio clic sul file jar e per poter aprire la finestra del prompt dei comandi ed eseguire nel prompt dei comandi come se ho appena scritto la linea java-jar myJar.jar.

Quando faccio doppio clic sul file jar, penso che sia in esecuzione perché viene visualizzata una parte visiva di java, ma non c'è una finestra del prompt dei comandi che mostri l'output della console.

Dopo essermi guardato attorno ho incontrato persone che dicevano che javaw, che è ciò a cui sono associati i file jar, non hanno una console e che ho bisogno di associare i file jar con java.exe invece di javaw.exe. Ho provato questo e non sembra funzionare.

Qualcuno può aiutare? Un passo alla volta sarebbe bello.

+0

Penso che Microsoft persone stanno cercando di spiega come risolvere il tuo problema, segui questo link: http://answers.microsoft.com/en-us/windows/forum/windows_7-windows_programs/since-updating-to-windows-7-i-am-unable-to -run-any/b4b2c2fb-8634-4d26-bf76-a27cb7e6cbff Spero che ti aiuti! –

risposta

2

Questo non è IMHO possibile. È possibile eseguire open the console dall'applicazione stessa, ma dipende dal sistema operativo. Se è necessaria la console aperta, è necessario eseguire l'applicazione da essa come già si fa.

0

.. ma non c'è una finestra del prompt dei comandi che mostri l'output della mia console.

No, non ci sarebbe una console per un Jar eseguibile. Avrai bisogno di mettere quell'output nella GUI.

+0

Quindi non vi è alcun modo in cui è possibile ottenere un file jar per aprire nella finestra del prompt dei comandi da un doppio clic? – Nexus490

+0

Se si modifica * "aperto nella finestra del prompt dei comandi" * a * "si apre con una finestra del prompt dei comandi associata per l'output" * la risposta è 'no'. Non cercherò di rispondere alla domanda come me la metti, dato che non riesco a capirlo. –

+0

Bene, hai risposto alla mia domanda se intendevi o meno; Grazie. – Nexus490

1

Se si desidera visualizzare la riga di comando, è necessario avviare il jar con la riga di comando.

java-jar MyJar.jar

1

vorrei fare qualcosa di simile:

(Testato in Widows XP con JRE 1.6, per sostenere altri sistemi operativi si dovrebbe verificare il percorso per ciascun sistema operativo e selezionare l'emulatore della console appropriata (xterm, gnome-terminal ... (verificare la presenza di esistenza e le preferenze ...)))

public static void main(String[] args) throws Exception { 
    if (args.length == 0) { 
     String path = Main.class.getProtectionDomain().getCodeSource().getLocation().getPath().substring(1);//Adds extra slash (??) didn't know why 
     String decodedPath = URLDecoder.decode(path, "UTF-8"); 
     System.out.println(decodedPath); 
     Runtime.getRuntime().exec("cmd /c start java -jar \"" + decodedPath + "\" actual_run"); 
    } 
    else { 
     System.out.println("Hello World"); 
     JOptionPane.showMessageDialog(null, "Hello World"); 
     System.in.read(); 
    } 
} 
1

in alternativa vi suggerisco di creare un file bat con questo contenuto:

java -jar yourjar.jar 

Questo lancerà il tuo jar e aprirà automaticamente il prompt dei comandi, il tutto da un semplice doppio clic su un file bat. (Il file bat deve essere nella stessa cartella del file jar, altrimenti è necessario specificare il percorso del jar, non solo il nome jar)

7

Ho avuto la stessa domanda e l'idea del file bat era geniale e mi ha salvato un sacco di tempo per riscrivere il codice. Grazie! (Avrei svalutato, ma a quanto pare non ho abbastanza rep.)

I file batch (o Bat) sono facilissimi da realizzare.

Basta inserire lo java -jar YourFile.jar nel blocco note (se ci si trova su Windows), salvare come Title.bat e inserirlo nella stessa cartella del contenitore.

presto! un programma aperto al pubblico.

+1

Questa è in realtà la soluzione migliore – Devid

+1

Sì, ma devi avere entrambi i file di, che è bacato se dovessi spostare il file jar nel mio file system – IchHabsDrauf

0

Controlla la tua MANIFEST.MF

  1. estrarre i file jar "eseguibile" in una cartella
  2. ritrovamento MANIFEST.MF nella cartella META-INF
  3. controllo presenza di questo campo: Main-Class : YourMainClassHere

Se questo campo sparito quindi aprire il MANIFEST.txt originale per questo punto: Main-Class: YourMainClassHere deve terminare con una nuova linea o di ritorno a capo

Warning: The text file must end with a new line or carriage return. The last line will not be parsed properly if it does not end with a new line or carriage return.

1

Questa è la soluzione più semplice per i principianti:

  1. Aprire qualsiasi editor di testo
  2. scrivere questo due linee:

    java "yourmainclassname" 
        pause 
    
  3. salvare il file come "nome" bat

  4. eseguirlo con un doppio clic da Windows GUI

(ovviamente questo nuovo creato .bat file deve essere nella stessa cartella del .class)

Problemi correlati