2015-10-28 34 views
17

Sto provando a creare un'applicazione JavaFX (pacchetto nativo) per i sistemi WinXP a 32 bit.Impossibile creare un pacchetto nativo per l'applicazione JavaFX su WinXP a 32 bit

Ho distribuito una macchina virtuale WinXP a 32 bit. Hanno anche installato il JDK (JDK-8u65-windows-i586) e InnoSetup e Netbeans 8.0.2 ...

Tuttavia, mentre io sto cercando di confezionare come applicazione .EXE che ricevo:

Exception: java.io.IOException: Cannot run program "C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\iconswap2855415551655584734.exe": CreateProcess error=193, %1 is not a valid Win32 application 
C:\Documents and Settings\Administrator\My Documents\Netbeans Projects\AffideaDicomRouterBasic1_0_0\nbproject\jfx-impl.xml:3415: The following error occurred while executing this line: 
C:\Documents and Settings\Administrator\My Documents\Netbeans Projects\AffideaDicomRouterBasic1_0_0\nbproject\jfx-impl.xml:3438: The following error occurred while executing this line: 
C:\Documents and Settings\Administrator\My Documents\Netbeans Projects\AffideaDicomRouterBasic1_0_0\nbproject\jfx-impl.xml:1465: The following error occurred while executing this line: 
C:\Documents and Settings\Administrator\My Documents\Netbeans Projects\AffideaDicomRouterBasic1_0_0\nbproject\jfx-impl.xml:3093: The following error occurred while executing this line: 
C:\Documents and Settings\Administrator\My Documents\Netbeans Projects\AffideaDicomRouterBasic1_0_0\nbproject\jfx-impl.xml:2055: Error: Bundler "EXE Installer" (exe) failed to produce a bundle. 
BUILD FAILED (total time: 35 seconds) 

Is il mio setup ok? Mi manca qualcos'altro?

ho pensato che, al fine di creare un'applicazione JavaFX per WinXP32 dovrei solo:

  • costruire su un simile (WinXP32) macchina
  • utilizzare l'edizione X86 JDK

Tuttavia questo non sembra essere abbastanza!

+0

In realtà sto cercando di costruire anche alcuni dei campioni JavaFX piene di NetBeans e sto anche ricevendo lo stesso errore – thanili

+0

Ho anche provato con JDK 7 Edizione a 32 bit senza successo. Mi chiedo cosa mi sia mancato ... – thanili

+4

Windows XP non è supportato dalle versioni correnti di JavaFX. (O meglio, Microsoft.) –

risposta

0

provare a creare l'exe con launch4j.

è necessario esportare il progetto come "jar runnable" (in eclissi).

In launch4j è stato quindi scelto il file di output e il file di input. Puoi anche raggruppare un percorso JRE o impostare una versione JRE min/max.

-1

qual è la versione java di runtime del progetto è a 32 bit? se non hai bisogno di usare jdk a 32 bit per costruire il progetto.

1

La domanda sembra che si stia tentando di comprimere l'archivio jar (o tutti i file .class) in un archivio exe. La mia risposta è basata su tale ipotesi e cerco di spiegare ed estendere la risposta da nextcard. Mi dispiace se ho interpretato male la tua domanda. Inoltre, mi dispiace per la cattiva formattazione dei miei collegamenti. Non sono autorizzato a pubblicare più di un link. Lo correggerò non appena avrò dieci reputazione.

Java non è un linguaggio compilato. Ciò implica che i file .class o l'archivio jar non sono eseguibili. Ogni programma Java deve essere avviato utilizzando un JIT (compilatore Just in time) che in genere viene chiamato java. Il sistema è in grado di eseguire archivi jar se si fa clic su di essi perché sa di dover aggiungere "java -jar" prima del nome file per poter fare qualcosa.

Se si desidera che il programma java come eseguibile dipendente dal sistema, è necessario utilizzare un compilatore AOT (Ahead of time). Quelli producono vera bytecode sistema può interpretare sé independend su una macchina virtuale programmi Java sono normalmente in esecuzione in Un'altra possibilità è quella di avvolgere il vaso con Launch4J (già menzionato da Nextcard)

fascia:.

AOT-compilatore:

  • vmkit.llvm.org
  • gcc.gnu.org/java/
  • www.excelsiorjet.com
+0

La mia domanda ha a che fare con l'opzione di impacchettamento nativo .exe che è offerta da JavaFX (Netbeans IDE). Questo sembra funzionare solo con i sistemi Win 64 bit. Grazie! – thanili