2009-08-19 19 views
0

Ich habe ein kurzes Skript, um meine Anwendung zu starten (es ruft Java mit einigen Parametern auf). Die Anwendung benötigt einen granatensicheren Launcher für Mac OS X. Die Anwendung wird nicht installiert, sie wird nicht einmal auf den Host-Datenträger kopiert, sie wird stattdessen auf USB-Sticks geliefert."Klicken zum Ausführen" in Mac OS X

Wenn der Benutzer den Stick einführt und öffnet, sollte er in der Lage sein, auf eine entsprechend benannte Datei zu klicken (zum Beispiel start_osx.sh), und das würde das Skript ausführen.

Ich versage gerade jetzt. Wenn ich auf diese Datei klicke, wird sie im Texteditor geöffnet. Auch wenn chmod +x für die Datei festgelegt ist.

Kompilieren des Skripts zu einer "nativen" ausführbaren Datei ist eine Option, wenn das mir helfen wird.

Bonuspunkte für wenn ich das Dateisymbol wie im Dateibrowser angezeigt anpassen kann.

Antwort

2

Sie benötigen ein Anwendungspaket zu erstellen. Sie werden ein Symbol erhalten, usw.

Dies scheint für Java ein nützlicher Leitfaden zu sein, aber ich habe nicht mit Java für eine Weile gestört:

http://developer.apple.com/documentation/Java/Conceptual/Java14Development/03-JavaDeployment/JavaDeployment.html

allgemeinen:

http://developer.apple.com/documentation/CoreFoundation/Conceptual/CFBundles/Introduction/Introduction.html#//apple_ref/doc/uid/10000123i-CH1-SW1

2

Mac OS X startet Anwendungspakete (Ordner mit einer bestimmten Struktur). Sie können Ihr Shell-Skript innerhalb eines Anwendungspakets umhüllen, indem Sie platypus verwenden.

Das Anwendungssymbol ist Teil des Anwendungsbundle-Inhalts.

0

hinzufügen .command an den Dateinamen (das heißt start_osx.sh.command)

Dies wird ausgeführt, aber mit dem Arbeitsverzeichnis als den Stammordner des Benutzers.

cd "`dirname "$0"`" 

Zum Skript hinzufügen und das Arbeitsverzeichnis wird das Verzeichnis des Skript sein aus gestartet.

0

Alternativ können Sie ein AppleScript erstellen, das die Anwendung ausführt.