Sou novato no Mac OS X (vindo do Windows) e estou tentando entender arquivos .app. No Windows, tínhamos executáveis (arquivos .exe). Se você abrisse um, seu programa seria executado e quaisquer outros arquivos necessários seriam localizados em outro lugar. No Mac OS X, como eu o entendo, esses "arquivos" .app são realmente mais parecidos com pastas que contêm não apenas o executável em si, mas também outros arquivos que o aplicativo pode precisar.
Minha pergunta é: o que exatamente esses arquivos .app fazem? Como é diferente de perfurar neles e executar o executável real?
Recentemente, eu estava tentando fazer com que um aplicativo fosse executado no OS X. Finalmente consegui fazê-lo funcionar (parece que JAVA_HOME precisava ser definido). No entanto, ele só funciona quando eu detalho a pasta .app e executo o script de shell que inicia o aplicativo. Se eu clicar duas vezes no arquivo / pasta .app, o aplicativo apenas salta no banco dos réus por um tempo, eventualmente pára e nada acontece (exceto os fãs girando como loucos). Tão claramente que o sistema operacional está fazendo algo diferente quando tenta executar o aplicativo a partir do arquivo .app vs. diretamente do executável.
Gostaria de entender o que exatamente o .app está fazendo que faz com que este aplicativo não seja executado, para que eu possa trabalhar para corrigir o problema. Para sua informação, o aplicativo é o SQL Developer da Oracle.
fonte
Respostas:
"apps" são "Pacotes de Pacotes", é um jargão da Apple e são tratados especialmente pelo sistema operacional. Como mencionado acima, esses são realmente diretórios Unix, em um formato especial. O arquivo executável Unix real está em um subdiretório chamado MacOS, que você pode ver usando o menu "Mostrar conteúdo do pacote" no Finder.
O "aplicativo" é análogo ao diretório criado quando você instala um programa do Windows. Você pode realmente navegar no aplicativo e executar o arquivo executável do Unix.
Isso não resolve o seu problema, mas sem saber mais sobre o aplicativo, ele não será resolvido através da manipulação do pacote. Você precisará entrar em contato com o desenvolvedor.
Você também pode consultar o aplicativo Console, que permite examinar qualquer mensagem de erro ou aviso.
fonte