2015-10-28 22 views
17

Próbuję utworzyć aplikację JavaFX (pakiet macierzysty) dla 32-bitowych systemów WinXP.Nie można zbudować pakietu macierzystego dla aplikacji JavaFX na komputerze WinXP 32-bitowym

Zainstalowałem 32-bitową maszynę wirtualną WinXP. Zostały również zainstalowane JDK (JDK-8u65-windows-i586) i InnoSetup i Netbeans 8.0.2 ...

Jednak gdy próbuję zapakować jako aplikacja EXE i otrzymują:

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) 

Czy moja konfiguracja jest dobra? Czy brakuje mi czegoś innego?

Myślałem, że tylko w celu stworzenia aplikacji JavaFX dla WinXP32 Powinienem:

  • Zbuduj go na podobnym (WinXP32) maszyny
  • Korzystanie edycji X86 JDK

jednak to chyba nie wystarczy!

+0

Właściwie staram się budować również niektórych próbkach JavaFX pakowanych z NetBeans i jestem również otrzymywania tego samego błędu – thanili

+0

Próbowałem również z JDK 7 32-bitowa edycja bez powodzenia. Zastanawiam się, czego mi brakowało ... – thanili

+4

Windows XP nie jest obsługiwany przez obecne wersje JavaFX. (Lub w rzeczywistości przez Microsoft.) –

Odpowiedz

0

spróbuj zbudować .exe z launch4j.

musisz wyeksportować projekt jako "działający jar" (w środowisku Eclipse).

W launch4j wybierasz plik wyjściowy i plik wejściowy. Możesz nawet dołączyć do niego ścieżkę JRE lub ustawić wersję JRE min/max.

-1

co to jest wersja runtime java projektu to 32-bit? jeśli nie, musisz użyć 32-bitowego jdk do zbudowania projektu.

1

Pytanie brzmi, jak próbujesz spakować archiwum słoika (lub wszystkie pliki .class) do archiwum exe. Moja odpowiedź opiera się na tym założeniu i próbuje wyjaśnić i rozszerzyć odpowiedź z następnej karty. Przepraszam, jeśli źle zinterpretowałem twoje pytanie. Przykro mi też z powodu złego formatowania moich linków. Nie mogę publikować więcej niż jednego linku. Poprawię to, gdy tylko będę miał 10 punktów reputacji.

Java nie jest językiem kompilowanym. Oznacza to, że pliki .class lub archiwum słoików nie są wykonywalne. Każdy program w języku Java musi być uruchomiony przy użyciu kompilatora JIT (Just in time), który jest zwykle nazywany java. System może wykonać archiwa słoika, jeśli klikniesz je, ponieważ wie, że musi dodać "java-jar" przed nazwą pliku, aby móc coś zrobić.

Jeśli chcesz mieć program java jako plik wykonywalny dependend systemu, musisz użyć kompilatora AOT (z wyprzedzeniem). Ci produkować prawdziwy kod bajtowy system może zinterpretować sam Niezależny na maszynie wirtualnej programy Java są normalnie działa w Inną możliwością jest, aby owinąć słoik z launch4j (wspomniany już przez nextcard)

Wrapper:.

AOT kompilator:

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

Moje pytanie dotyczy rodzimej opcji pakowania .exe, którą oferuje JavaFX (Netbeans IDE). Wydaje się, że działa tylko z systemami Win 64bit. Dzięki! – thanili

Powiązane problemy