2010-03-15 11 views
5

Sto cercando di raggruppare un JRE con il mio file jar in modo che possa eseguire la mia applicazione su qualsiasi computer Windows, indipendentemente dal fatto che abbia Java o meno. Il manuale JSmooth dice:JQuesta domanda sul raggruppamento di un JRE

For the option to work correctly, you have to put a JRE in a directory near the EXE (generally in a subdirectory called "jre" or whatever). Once the exe is generated, it will FIRST try to locate the JRE at the location mentioned. If it can't be found there, then it will fallback in the normal jre look-up mode (search for a jre or a jdk in the Windows registry or in commonly-used environment variables). There is no JVM-version check when using a bundled JRE, as the packager is supposed to bundle a suitable JVM for the application.

Questo significa che la sottocartella JRE dovrebbe essere incluso nel vaso, essere il suo vaso separata, o mettere nella cartella che viene con l'exe? Se si suppone di essere in una cartella con l'exe, come posso specificare il percorso relativo alla sottocartella jre?

mie directory sono i seguenti:

setup/

-jre/

-myprogram.exe

Ho provato ad utilizzare ..\jre, .\jre, ..\setup\jre nella schermata grafica, ma nessuno di loro ha funzionato.

Qualsiasi idea o suggerimento sarebbe molto apprezzato. Grazie mille!

EDIT: quando ho provato jre (e ..\jre penso), ho ricevuto il seguente messaggio di errore da windows quando ho provato a eseguirlo "MyProgram.exe ha smesso di funzionare." Quando guardo i particolari di problema, si dice APPCRASH e il nome del modulo colpa è jvm.dll

+0

ne dite semplicemente "jre"? Windows assume percorsi relativi alla cartella corrente se non diversamente specificato. –

+0

quando ho usato. \ Jre, il programma lo ha cambiato in plain jre, e ancora non ha funzionato. Ci proverò di nuovo anche se – chama

+0

continua a non funzionare. – chama

risposta

0

Hai provato Launch4J (http://launch4j.sourceforge.net/), siamo passati da JSmooth a questo qualche tempo fa, come è stato più in su fino ad oggi e aveva più funzioni.

Tuttavia, inserire la cartella jre nella stessa cartella di .exe, quindi utilizzare jre \ come percorso. Avrai bisogno di assicurarti che la cartella di lavoro di .exe sia la cartella di installazione. E assicurati di avere un JRE completo nella cartella jre.

0

appena messo la cartella "jre" accanto alla exe, e scrivere "jre" (senza virgolette) nella GUI di JSmooth