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.