Kiedy uruchamiam jakiś program w Terminalu (lub iTerm2), gdy program rozwidla proces, pulpit OS X przełącza fokus z bieżącej aplikacji na rozwidlony proces. Kiedy tak się dzieje, rozwidlona nazwa procesu pojawia się na pasku menu OS X.
Jest to szczególnie denerwujące podczas korzystania z trybu pełnoekranowego, ponieważ powoduje zmianę obszaru roboczego, gdy fokusuje się rozwidlony proces.
Jak mogę zatrzymać to przełączanie ostrości? Te programy terminalowe zakłócają pracę, którą wykonuję w innych aplikacjach podczas ich działania.
macos
mountain-lion
terminal
fullscreen
iterm
jdgilday
źródło
źródło
Odpowiedzi:
W moim przypadku to wtyczka Maven Failsafe spowodowała irytujące kradzież okna w ForkedBooter, a ustawienie
JAVA_TOOL_OPTIONS
zmiennej.bashrc
nie pomogło.Ta poprawka dotyczy zarówno Failsafe, jak i Surefire (chociaż w moim przypadku Surefire nie kradł ostrości).
W swoim
pom.xml
dodaj<argLine>-Djava.awt.headless=true</argLine>
linię wewnątrz<configuration>
wtyczki surefire dla bezpiecznego (i / lub) awaryjnego.Będzie to wyglądać tak:
źródło
Jak sugeruje @patrix, wydaje mi się, że mam tylko ten problem z procesami Java.
Ta odpowiedź w StackOverflow wydaje się rozwiązać problem
źródło
Czy potrafisz uruchomić swój program terminalowy w tle? Wierzę, że dzięki temu nie będzie się koncentrować na komputerze. Wystarczy dodać „&” na końcu polecenia terminalu, aby uruchomić proces w tle.
Więc jeśli twoje polecenie terminalu to:
zmień na:
Aby przenieść proces działający w tle na pierwszy plan w terminalu, użyj polecenia:
źródło