Sto usando setuptools
per la prima volta e sto provando a impacchettare il mio codice in modo che altri possano facilmente svilupparlo. Sto gestendo tutto in un ambiente virtuale.Modulo trovato in modalità di installazione ma non in modalità di sviluppo utilizzando setuptools
Domanda breve: Come cambio la directory a cui punta il collegamento dell'uovo quando eseguo python setup.py develop
?
Lunga domanda: il modulo che sto sviluppando si chiama cops_and_robots
. Quando eseguo python setup.py install
, le cose funzionano correttamente e sono in grado di importare il mio modulo cops_and_robots
. Tuttavia, quando ho eseguito python setup.py develop
, in esecuzione import cops_and_robots
riesce perché il cops_and_robots.egg-link
punti alla directory sbagliata:
(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/
.
Ecco la struttura di directory:
|____Downloads
| |____cops_and_robots # the whole package directory
| | |____...
| | |____requirements.txt
| | |____setup.py
| | |____src
| | | |____cops_and_robots # the python package directory
| | | |______init.py__
| | |____...
E il mio 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()],
)
Il la correzione manuale consiste nell'applicare semplicemente src/cops_and_robots
al file cops_and_robots.egg-link
, ma sto cercando un modo più elegante un modo per farlo.