Jestem nowy w systemie Mac OS X (pochodzącym z systemu Windows) i próbuję zrozumieć pliki .app. W systemie Windows mieliśmy pliki wykonywalne (pliki .exe). Jeśli go otworzysz, program uruchomi się, a wszelkie inne potrzebne pliki zostaną umieszczone w innym miejscu. W systemie Mac OS X, jak rozumiem, te „pliki” .app są bardziej podobne do folderów zawierających nie tylko sam plik wykonywalny, ale także inne pliki, których aplikacja może potrzebować.
Moje pytanie brzmi: co dokładnie robią te pliki .app? Czym różni się od wiercenia w nich i uruchamiania rzeczywistego pliku wykonywalnego?
Ostatnio próbowałem uruchomić aplikację na OS X. W końcu udało mi się ją uruchomić (wygląda na to, że JAVA_HOME musiał zostać ustawiony). Działa to jednak tylko wtedy, gdy przechodzę do folderu .app i uruchamiam skrypt powłoki, który uruchamia aplikację. Po dwukrotnym kliknięciu pliku / folderu .app aplikacja odbija się na chwilę w doku, ostatecznie zatrzymuje się i nic się nie dzieje (poza fanami wirującymi jak szalony). Tak wyraźnie system operacyjny robi coś innego, gdy próbuje uruchomić aplikację z pliku .app vs. bezpośrednio z pliku wykonywalnego.
Chciałbym zrozumieć, co dokładnie robi .app, co powoduje, że ta aplikacja nie działa, więc mogę pracować, aby rozwiązać problem. Do Twojej dyspozycji jest SQL Developer Oracle.
źródło
Odpowiedzi:
„aplikacje” to „Pakiety pakietów” to żargon Apple i są traktowane specjalnie przez system operacyjny. Jak wspomniano powyżej, w rzeczywistości są to katalogi uniksowe, w specjalnym formacie. Rzeczywisty plik wykonywalny systemu Unix znajduje się w podkatalogu o nazwie MacOS, który można zobaczyć za pomocą menu „Pokaż zawartość pakietu” w Finderze.
„Aplikacja” jest analogiczna do katalogu utworzonego podczas instalacji programu Windows. Rzeczywiście możesz przejść do aplikacji i uruchomić plik wykonywalny Unix.
Nie rozwiązuje to problemu, ale bez wiedzy o aplikacji nie zostanie rozwiązany przez manipulowanie pakietem. Musisz skontaktować się z programistą.
Możesz także spojrzeć na aplikację Console, która pozwoli ci sprawdzić wszelkie komunikaty o błędach lub ostrzeżeniach.
źródło