2013-02-17 17 views
5

Mój silnik gry to połączenie Jython i Java, więc wykonuję słoik wraz ze skryptem python zamiast pliku klas.Javaw nadal tworzy okno konsoli; Dlaczego to?

Jednak, gdy zmienię "java" na "javaw", to nie będzie chować konsoli tak jak zwykle. Dlaczego tak jest i czy istnieje sposób na obejście tego problemu?

+4

tylko domyślać: to 'java'/linia' javaw' poleceń w pliku wsadowym, który jest sam odpowiedzialny za konsolą? – zigg

+0

Cóż, to jest uruchamianie pliku wsadowego, ale to moja jedyna metoda na wykonanie kodu, więc jeśli to dlatego nie zadziała, to po prostu się do tego przyzwyczaję. – Luft

+0

Właśnie przetestowałem to z cmd zamiast pliku wsadowego i problem nie ustępuje. Pomysły? – Luft

Odpowiedz

3

Nie sądzę JavaConsole jest funkcją java.exe vs javaw.exe. Różnica polega na tym, że java.exe ma stdout & stderr napisz do SystemConsole, a javaw.exe działa bez stdout i stderr zapisując do SystemConsole. Uruchomiony plik java.exe zostanie zablokowany, ponieważ jest połączony z SystemConsole. Uruchomienie javaw.exe zwróci kontrolę do uruchamiania SystemConsole (lub skryptu) i będzie kontynuowane bez konsoli SystemConsole.

Wyłącz JavaConsole za pomocą panelu sterowania java lub ikony java na pasku zadań.

from the java control panel

from the task bar java icon

Powiązane problemy