Tôi đang cố gắng cài đặt ứng dụng Kim tự tháp - giả sử test_app
. bên trong một môi trường ảo và nó đang được cài đặt như test-app
(đầu ra đóng băng pip hiển thị nó test-app==0.0
).Tại sao PIP chuyển đổi dấu gạch dưới thành dấu gạch ngang
Vì lý do này, tôi không thể nhập gói.
Tôi nên khắc phục sự cố này như thế nào? Thông tin
thêm: http://mail.python.org/pipermail/distutils-sig/2011-August/017935.html
Tôi đang sử dụng phiên bản pip 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
""",
)
UPDATE:
để tóm tắt những phát hiện cho đến nay:
- Bình thường pip báo cáo tên gói là ứng dụng thử nghiệm.
- Nó không phải là bình thường mà liên kết trứng được trỏ đến gốc env ảo của bạn.
- Nhưng thực tế là tệp .egg-info được tạo bên trong thư mục gốc ảo của bạn cũng là điểm phát triển bằng cách sử dụng thư mục đó làm gốc trứng.
Tóm tắt từ trước đến nay: Lệnh 'develop' tạo thư mục' .egg-info' trong thư mục ảo env root và tệp '.gg-link' trỏ đến cùng thư mục gốc đó. Đây là nguyên nhân của lỗi nhập. Thực tế là 'pip' báo cáo tên gói là' test-app' là bình thường. –
@MartijnPieters Tôi đã giải quyết được vấn đề. Xem câu trả lời của tôi. – treecoder