Como posso impedir que processos java roubem o foco?

9

Alguém já reparou que aplicativos java de linha de comando no OS X criam processos de GUI que roubam o foco (por exemplo, subprocessos groovy e maven)? Estou achando isso extremamente irritante; provavelmente porque eu moro com ele por 6-8 meses desde que eu acho que o OS X 10.6.

Como impedir que processos java façam isso no OS X?

dsummersl
fonte
1
Essa é uma pergunta muito boa, mas acho que depende da implementação do seu aplicativo Java. Se você perguntar a esses caras no Stack Overflow, eles poderão agora qual sinalizador Java ativar o modo de segundo plano ao iniciar.
Enrico Susatyo
Sim, perguntei lá primeiro e nunca recebi nenhum tipo de resposta. Quando faço a 'versão do java', vejo: Java (TM) SE Runtime Environment (compilação 1.6.0_29-b11-402-11D50b) VM do servidor Java HotSpot (TM) de 64 bits (compilação 20.4-b02-402, modo misto ...
dsummersl

Respostas:

9

Eventualmente, encontrei a solução básica:

Para aplicativos Java em geral, você pode especificar que eles são 'decapitados', adicionando a opção -Djava.awt.headless=trueao seu aplicativo java.

(também publicado no stackoverflow).

dsummersl
fonte
Mesmo com essa bandeira, meu simulador invisível de Android rouba o foco.
Raphael Oliveira