Я использую setuptools
впервые и пытаюсь упаковать свой код, чтобы другие могли легко его разрабатывать. Я запускаю все в виртуальной среде.
Короткий вопрос: как изменить каталог, на который указывает ссылка на яйцо, когда я запускаю python setup.py develop
?
Длинный вопрос: модуль, который я разрабатываю, называется cops_and_robots
. Когда я запускаю python setup.py install
, все работает нормально, и я могу импортировать свой модуль cops_and_robots
. Однако, когда я запускаю python setup.py develop
, запуск import cops_and_robots
завершается ошибкой, потому что cops_and_robots.egg-link
указывает на неправильный каталог:
(cops_and_robots)Antares:cops_and_robots nick$ cat ~/virtual_environments/cops_and_robots/lib/python2.7/site-packages/cops-and-robots.egg-link
/Users/nick/Downloads/cops_and_robots/
.
Вот структура каталогов:
|____Downloads
| |____cops_and_robots # the whole package directory
| | |____...
| | |____requirements.txt
| | |____setup.py
| | |____src
| | | |____cops_and_robots # the python package directory
| | | |______init.py__
| | |____...
И мой setup.py
:
from setuptools import setup, find_packages
import ez_setup
ez_setup.use_setuptools()
setup(
# Author information and Metadata
name='cops_and_robots',
# Package data
packages=find_packages('src'),
package_dir={'cops_and_robots':'src/cops_and_robots'},
include_package_data=True,
platforms='any',
requires=['std_msgs','rospy'],
tests_require=['pytest'],
install_requires=[i.strip() for i in open("requirements.txt").readlines()],
)
Ручное исправление состоит в том, чтобы просто добавить src/cops_and_robots
к файлу cops_and_robots.egg-link
, но я ищу более элегантный способ сделать это.