मैं एक पिरामिड ऐप इंस्टॉल करने की कोशिश कर रहा हूं - मान लें test_app
। वर्चुअल वातावरण के अंदर और इसे test-app
के रूप में स्थापित किया जा रहा है (पीआईपी फ्रीज आउटपुट इसे test-app==0.0
दिखाता है)।पीआईपी अंडरस्कोर को डैश में परिवर्तित क्यों करता है
इस वजह से, मैं पैकेज आयात नहीं कर सकता।
मुझे इस समस्या को कैसे ठीक करना चाहिए?
और जानकारी: http://mail.python.org/pipermail/distutils-sig/2011-August/017935.html
मैं पिप संस्करण का उपयोग कर रहा 1.3.1
setup.py:
import os
from setuptools import setup, find_packages
here = os.path.abspath(os.path.dirname(__file__))
README = open(os.path.join(here, 'README.txt')).read()
CHANGES = open(os.path.join(here, 'CHANGES.txt')).read()
requires = [
'pyramid',
'pyramid_debugtoolbar',
'waitress',
]
setup(name='test_app',
version='0.0',
description='test_app',
long_description=README + '\n\n' + CHANGES,
classifiers=[
"Programming Language :: Python",
"Framework :: Pyramid",
"Topic :: Internet :: WWW/HTTP",
"Topic :: Internet :: WWW/HTTP :: WSGI :: Application",
],
author='',
author_email='',
url='',
keywords='web pyramid pylons',
packages=find_packages(),
include_package_data=True,
zip_safe=False,
install_requires=requires,
tests_require=requires,
test_suite="test_app",
entry_points="""\
[paste.app_factory]
main = test_app:main
""",
)
अद्यतन:
अब तक निष्कर्ष संक्षेप में प्रस्तुत करने:
- यह सामान्य है कि पीपी पैकेज नाम को टेस्ट-ऐप के रूप में रिपोर्ट करता है।
- यह सामान्य नहीं है कि अंडा लिंक आपके वर्चुअल एनवी रूट को इंगित कर रहा है।
- लेकिन तथ्य यह है कि .egg-info फ़ाइल आपके वर्चुअल एनवी रूट के अंदर बनाई गई है और साथ ही उस निर्देशिका का उपयोग अंडे रूट के रूप में विकसित करने के लिए भी है।
सारांश अब तक: 'develop' कमांड वर्चुअल एनवी रूट में' .gg-info' निर्देशिका बनाता है, और '.gg-link' फ़ाइल उसी रूट निर्देशिका को इंगित करता है। यह आयात त्रुटि का कारण है। तथ्य यह है कि 'पीआईपी' पैकेज नाम को 'टेस्ट-एप' के रूप में रिपोर्ट करता है सामान्य है। –
@MartijnPieters मैंने समस्या हल कर दी है। मेरा जवाब देखें – treecoder