मैं एक पर हूँ MAC अजगर के साथ 2.7.11। मैं अत्यंत सरल और सीधी परियोजनाएँ बनाने के साथ रहा हूँ, जहाँ मेरी एकमात्र आवश्यकता यह है कि मैं चला सकता हूँ python setup.py install
, और setup.py
सेटअप कमांड का उपयोग कर सकता हूँ , आदर्श रूप से डिस्टुटिल्स से। वहाँ वास्तव में कोई अन्य आयात या कोड setup()
है कि मैं यहाँ क्या नोट के अलावा अन्य से अलग नहीं हैं।
मुझे त्रुटि तब मिलती है जब मेरी setup.py
फ़ाइल के लिए आयात होते हैं:
from distutils.core import setup
जब मैं इसका उपयोग करता हूं, तो मुझे चेतावनी मिलती है जैसे कि
/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py/267: उपयोगकर्तावार्ता: अज्ञात वितरण विकल्प: 'entry_points' चेतावनियाँ () संदेश)
यदि मैं निम्न में आयात (और कुछ नहीं ) बदलता हूं :
from distutils.core import setup
import setuptools # noqa
चेतावनियाँ दूर हो जाती हैं।
ध्यान दें कि मैं उपयोग नहीं कर रहा हूं setuptools
, बस इसे आयात करने से व्यवहार में बदलाव आता है कि यह चेतावनी नहीं देता है। मेरे लिए, यह वास्तव में चौंकाने वाला अंतर है जहां कुछ परियोजनाएं मैं उन चेतावनियों का उपयोग कर रहा हूं, और कुछ अन्य नहीं करते हैं।
स्पष्ट रूप से, बंदर-पैचिंग का कुछ रूप चल रहा है, और यह प्रभावित होता है कि आयात किया जाता है या नहीं। इस समस्या पर शोध करने वाले सभी लोगों के लिए शायद यह स्थिति नहीं है, लेकिन जिस संकीर्ण वातावरण में मैं काम कर रहा हूं, यह वह उत्तर है जिसकी मुझे तलाश थी।
यह अन्य (सामुदायिक) टिप्पणी के अनुरूप है, जो कहती है कि डिस्टल्यूट्स को सेटपाउटफूल को बंद करना चाहिए, और यह कि उन्हें एन्सिबल स्थापित करते समय समस्या थी। प्रतीत होता है कि अतीत में सेटपूल के बिना इंस्टॉल की अनुमति देने की कोशिश की गई थी, और फिर उस पर वापस चला गया।
https://github.com/ansible/ansible/blob/devel/setup.py
बहुत सारा सामान हवा में है ... लेकिन अगर आप एक सरल परियोजना के लिए एक सरल उत्तर की तलाश कर रहे हैं, तो आपको शायद बस सेटटॉपल्स आयात करना चाहिए।