既存のパイロンアプリを提供しようとしたときに、未開のエラーが発生します
-
11-10-2019 - |
質問
OS X Snow Leopardで既存のPython 2.5パイロンアプリケーションを提供しようとしています。
私はすでにPython 2.5をインストールしており、デフォルトのPythonインストールとして設定し、Pasterをインストールし、アプリが必要とするパイロンのバージョン(0.9.6.1)や他の卵をインストールしましたが、メインフォルダーにCDとCDとdo "paster serve development.ini"次のことを取得します。
File "/usr/local/bin/paster", line 5, in <module>
from pkg_resources import load_entry_point
File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 2603, in <module>
File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 666, in require
File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 565, in resolve
pkg_resources.DistributionNotFound: PasteScript==1.7.3
私は間違いなく「easy_install pastescript == 1.7.3」を実行しましたが、それでもこのエラーが発生します。私が欠けている本当に明白な何かがありますか?ヘルプ?
前もって感謝します。
解決
おそらく、システムに複数のPythonインストールがあります。 easy_install
コマンドは、おそらくペストスクリプトを別のPythonインタープリターにインストールしました。あなたは特定のものを持っているかもしれません easy_install-2.5
代わりにPython 2.5インタープリターに使用する必要があるというコマンド。
ただし、開発システムでVirtualenVを使用することを強くお勧めします。
Virtualenvを使用すると、特定のPythonインタープリターにバインドされたサンドボックスを作成でき、各プロジェクトに基づいてローカルに特定のパッケージバージョンをインストールできます。
Virtualenvを使用してパイロンを使用する詳細については、こちらをご覧ください。http://wiki.pylonshq.com/display/pylonscookbook/using+a+virtualenv+sandbox
他のヒント
おそらくこれは単純すぎる答えですが、特定のバージョンにインストールしてみます easy_install-2.5 PasteScript==1.7.3
見る 簡単なインストールドキュメント 詳細については。
最初の行を編集します /usr/sbin/luci
, 、次に、以下の行にpythonのバージョンを追加します。
#!/usr/bin/python -Es
最初の行を編集します /usr/bin/paster
次に、Pythonのバージョンを以下の行に追加します。
#!/usr/bin/python
「パスター - ヘルプ」を行ったときでさえ、このエラーが発生しました。ペルストスクリプトは、私の仮想ENVのサイトパッケージにあり、Pip Freezeには分裂した説明が表示されました。問題は、分離フォルダーが.dist-infoで終了したことでした。分布と呼ばれる別の卵が設置され、それは私のsys.pathの前にありました。 「.dist-info」卵フォルダーについては知らない古いバージョンのpkg_resourcesがありました。問題のPKG_RESOURCESロジックは、関数Find_on_Pathにあります。 PKG_RESOURCESを「DistInfo」を検索できます。したがって、Paste/Script/Command.pyの「pkg_resources.get_distribution( 'pastescript')」がインストールされているにもかかわらず、Pastescriptは見つかりませんでした。どのPKG_Resourcesが使用されているかを見つけるには、Pythonを実行して「pkg_resources; print pkg_resources」に移動できます。アンインストール「配布」は現在のエラーを修正しました(ただし、別のエラーを押します)。
更新:Ubuntu Precise(V12、2012年から2014年にリリースされたV12)に最新のCKAN 2.6.2(2017年4月)をインストールしていました(Vagrant Image Ubuntu/Precise64を介してインストールされたApt-Getアップデートで完全に更新されました)。壊れています。 Image Ubuntu/Trusty64を使用すると、完全に機能します。