2010-11-16 21 views
5

hizmet vermeye çalıştığımda bir PasteScript hatası alma Varolan bir Python 2.5 Pylons uygulamasını OS X Snow Leopard'da sunmaya çalışıyorum.Varolan bir Pylons uygulaması

Python 2.5'i zaten yükledim ve varsayılan Python yüklemesi, yüklü paster olarak ayarladım ve uygulama gereksinimlerinin (0.9.6.1) yanı sıra Pylons sürümünü de yükledim ... ancak CD'ye ana klasör ve ben şu olsun "paster development.ini hizmet" yapın: kesinlikle "easy_install PasteScript == 1.7.3" yapmış ve

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 

hala bu hatayı alıyorum. Kaybettiğim gerçekten belirgin bir şey var mı? Yardım et?

Şimdiden teşekkürler.

+0

Her şeyi bir virtualenv veya sisteme mi yüklüyorsunuz? –

+1

Sistemi kullanıyorum. Python 2.5'i Snow Leopard için varsayılan olarak ayarlamak için "varsayılanlar com.apple.versioner.python Sürüm 2.5" yazdım (önceden yüklenmiş 2.6 dışında) – Sarah

cevap

1

Sisteminizde muhtemelen birden çok Python yüklemesi var demektir. easy_install komutu, muhtemelen PasteScript'i farklı bir Python yorumlayıcısına yükledi. Python 2.5 yorumlayıcısı için kullanmanız gereken belirli bir easy_install-2.5 komutuna sahip olabilirsiniz. Ancak, geliştirme sisteminizde virtualenv kullanmanız kesinlikle önerilir.

Virtualenv, belirli bir Python yorumlayıcısına bağlı bir sanal alan oluşturmanıza ve her bir projeye göre yerel olarak belirli paket sürümlerini yükleyebileceğiniz bir alanı oluşturmanıza olanak sağlar.

burada elektrik direği ile Virtualenv kullanımıyla ilgili

fazla bilgi: /usr/sbin/luci yılında http://wiki.pylonshq.com/display/pylonscookbook/Using+a+Virtualenv+Sandbox

1

Belki de bu çok basit bir cevaptır, ancak ayrıntılı bilgi için easy_install-2.5 PasteScript==1.7.3 Bkz. Easy install docs'a bakın.

0

Düzen ilk satırı, sonra alt satıra piton sürümünü ekleyin: /usr/bin/paster yılında

#!/usr/bin/python -Es 

Düzenleme birinci hat ve daha sonra python sürümünü aşağıdaki satıra ekleyin:

#!/usr/bin/python 
0

Bunu anladım "paster - help" yaptığımda bile hata oluştu. PasteScript, sanal env'imin site paketlerinde ve PasteScript'in pip dondurmada gösterildi. Sorun, PasteScript klasörünün .dist-info ile bitmesiydi. Dağıtım adı verilen başka bir yumurta kuruldu ve sys.path'in önündeydi. ".dist-info" yumurta klasörleri hakkında bilmiyordu pkg_resources eski bir sürümü vardı. Söz konusu pkg_resources mantığı, find_on_path işlevindedir. "Dist-info" için pkg_resources dosyasını arayabilirsiniz. Bu nedenle, "pkg_resources.get_distribution (" PasteScript ")" yapıştır/komut/komut.py içinde kurulu olsa bile PasteScript bulunamadı. Hangi pkg_resources öğesinin kullanıldığını bulmak için python'u çalıştırabilir ve "pkg_resources, pkg_resources dosyasını içe aktarma" ya geçebilirsiniz. "Dağıt" ın kaldırılması mevcut hatayı düzeltdi (ancak başka bir hataya bastım).

Güncelleme: En son ckan 2.6.2'yi (Nisan 2017), Ubuntu hassaslığında (v12, biraz eski, 2012-2014 sürümünde) yüklüyordu (tam güncelleme güncellemesiyle güncellendi, vagrant image ubuntu aracılığıyla yüklendi)/precise64). O kırık. Görüntüyü kullanma ubuntu/trusty64 mükemmel çalışır.

İlgili konular