正常に動作する py2app を使用してアプリを作成しましたが、それを圧縮/解凍すると、新しく解凍されたバージョンは、traceback や os などの標準の python モジュールにアクセスできません。zip のマンページには、リソース フォークが保持されると記載されています。この方法でパッケージ化された他のアプリケーションを見たことがあります (これを .zip ファイルに入れる必要があります)。これを修正するにはどうすればよいですか?
6832 次
3 に答える
4
これは、ネイティブにインストールされたファイルへのシンボリックリンクを含むセミスタンドアロンバージョンを構築することが原因であり、「 -y」オプションを使用しない限り、圧縮/解凍時にリンクが失われます。
別の解決策は、代わりにスタンドアロン用にビルドすることです。これにより、(パブリック ドメイン) ファイルがアプリケーション内に配置されるため、圧縮/解凍などに耐えられます。また、基盤となる OS の変更に対するアプリの回復力が向上することも意味します。欠点は、もちろんサイズが大きく、セットアップがより複雑なことです。
スタンドアロン バージョンをビルドするには、再パッケージ可能な python.org バージョンをインストールする必要があります。これを行う方法の説明はここにありますが、ブログ投稿が書かれてからいくつかの変更があったので、コメントを読んでください.
于 2010-01-11T16:50:49.980 に答える
0
おそらく、完全な PYTHONPATH を指定する必要があります。
あなたのOSに依存します。調べる方法は次のとおりです。
os [またはその他の std モジュール] os をインポートします。ファイル()
于 2009-08-28T22:55:31.693 に答える
0
zip -y ... を使用して、シンボリックリンクを保持しながらファイルを作成します。
于 2009-08-28T11:12:43.947 に答える