一般に、OS X アプリ バンドルは、コマンド ラインから起動してコマンド ラインから引数を渡すようには設計されていません (お気づきのとおり、OS X 10.6 ではこれに対するサポートが追加されました)。アプリにファイルを渡す標準的なメカニズムはApple Eventsです。これは、アプリによって処理されるタイプのドキュメント ファイルの Finder のOpenコマンド、またはファイルが Dock のアプリのアイコンにドロップされたときに使用されます。 py2appは、標準の Mac GUI アプリケーションのように使用されるアプリケーションをパッケージ化するように設計されています。特に、起動プロトコルを使用し、Apple Events を介してファイルを受信します。コマンドライン ユーティリティを作成するようには設計されていません。後者をパッケージ化する場合は、通常のDistutils のパッケージング方法を使用してください。. または、スクリプトが 1 つのファイルのみで構成されている場合は、ここで説明されているようにスタンドアロンのシバン スクリプトにすることができます。
また、OS X では特定の GUI インターフェイスを使用するために本格的なアプリとして実行する必要がありますが、OS X 上の Python 自体は通常、フレームワークにインストールされ、フレームワーク内にPython.appインストールされたバンドル内から実行されます。(これは、Apple 提供の Python、インストーラーによってpython.orgインストールされたもの、およびインストールされた Python に当てはまります。) これらのフレームワークMacPortsPythonのいずれかによってスクリプトが実行されると、独自のアプリ バンドルを構築する必要なく、OS X によって GUI アプリとして認識されます。 .