2012-01-25 14 views
6

che sto utilizzando tecniche seguenti per eseguire l'applicazione GUI in Linux e Windows:Esiste un modo per eseguire l'applicazione GUI in modo headless in Mac?

Linux:

:~$ Xvfb :99 -ac & 
:~$ DISPLAY=:99 ./app 

Questo non funziona per il 100% in Mac OS X, anche se è installato Xvfb per impostazione predefinita, poiché la maggior parte delle applicazioni viene eseguita in ambiente Aqua e semplicemente ignora l'impostazione della variabile DISPLAY.

di Windows (modo programmatico):

HDESK hDesk=CreateDesktop(TEXT("Virtual"),NULL,NULL,NULL,GENERIC_ALL,NULL); 
if(hDesk!=NULL) { 
    // create process in this desktop 
    CloseDesktop(hDesk); 
} 

Mac OS X:

Come faccio a fare lo stesso in Mac OS X (sia da riga di comando o in modo programmatico) ? Grazie!

+0

* (non è una risposta, da qui il commento, ma ...) * So per certo che in passato la gente dove l'hacking scaffali pieni di Mac mini saldando un diodo (?) a ciascun Mac per far credere che ci fosse un monitor collegato in modo che OS X pensasse che non fosse realmente "senza testa". Non sono sicuro che sia stata la soluzione migliore in quei giorni, ma questo è sicuramente stato visto in natura ed è uno dei più pazzi hack che ho visto. – TacticalCoder

+0

Si potrebbe guardare [DVI Detective] (http://www.gefen.com/kvm/dproduct.jsp?prod_id=4714). – user1118321

+0

Hai mai trovato una soluzione a questo? Era piuttosto entusiasta di trovare Xvfb è stato installato di default, ma sembra essere abbastanza inutile. –

risposta

2

È una domanda Java? Non riconosco né la HDesk né la chiamata CreateDesktop, ma nella JVM per sé, è possibile eseguire senza testa praticamente ovunque invocando Java con il sistema senza testa proprietà definita ...

java -Djava.awt.headless=true 

ho avuto successo con questo almeno su Windows e Linux. Mi aspetto che funzioni su OS X nello stesso modo. L'articolo spiega abbastanza bene: http://java.sun.com/developer/technicalArticles/J2SE/Desktop/headless/

+0

No, questo non è un programma Java, può trattarsi di qualsiasi applicazione, ad esempio: applicazione browser Firefox. – spektom

Problemi correlati