Como executar um aplicativo do Adobe AIR em um servidor sem cabeçalho
O problema não é que você esteja tentando executá-lo a partir de um terminal. O problema é que não há exibição gráfica em execução na máquina. Você parece estar sendo executado em um servidor sem cabeçalho.
Estou ciente de duas possibilidades:
- Se você se conectar ao ssh, poderá adicionar a opção
-X
e permitir que o aplicativo do Adobe AIR use sua exibição local - Você pode enganar o Adobe AIR fazendo crer que há uma exibição em execução instalando o xvfb. Use o script abaixo que eu copiei de esta postagem :
Copie este código em um arquivo chamado xvfb_wrapper.sh
:
#!/bin/sh
#
# Author: Matthew Wilson, rPath, Inc.
#
# This could probably be done more elegantly in Python...
pid=''
for ((d=0; d < 20; d++)); do
DISPLAY=:$d
Xvfb -ac $DISPLAY > /dev/null 2>&1 &
sleep 2
jobs -l %1 > /dev/null
pid=$(jobs -l %1 2>&1 | grep Running | awk '{print }')
if [ -z "$pid" ]; then
continue
fi
if ps $pid > /dev/null 2>&1; then
break
fi
done
if [ -z "$pid" ]; then
echo "unable to start Xvfb"
exit 1
fi
trap "kill -9 $pid" SIGINT SIGTERM EXIT
export DISPLAY=$DISPLAY
$*
Chame chmod +x xvfb_wrapper.sh
para conceder direitos de execução. Chame seu aplicativo com o xvfb_wrapper.sh na frente dele. Neste exemplo, isso seria:
sudo xfvb_wrapper.sh "Adobe AIR Application Installer" -silent -eulaAccepted MyAirApp.air
Editar: Adicionadas informações dos comentários e o script do link.