Hallo!Paket nicht gefunden auf virtualenv - Kein Modul namens "mypack"
Ich habe versucht, ein Paket, das ich erstellt habe (mit dem Namen mypackage
) auf meinem Hauptprogramm (mit dem Namen collector
) zu verwenden. mypackage
mit dem setup.py
unten definiert:
name = "mypackage"
[...]
packages = find_packages(),
include_package_data = True,
exclude_package_data = { '': ['README.md'] }
[...]
entry_points = {
'console_scripts': [
'my-package=mypack.mypack:main'
]
},
ich ein kleines Programm präsentieren dieses Paket verwenden möchten, die in der Regel, wie unten auf collector
aufgerufen werden:
from mypack.common.prog import mylittleprogram
Ich habe versucht mypackage
zu installieren auf einem virtualenv, und dann mein Hauptprogramm (neu) installiert. Dann ausgeführt ich es, und es ist der Fehler habe ich:
Traceback (most recent call last):
from project.common.collector import collectArt
File "/root/project/lib/python3.5/site-packages/collector-0.1-py3.5.egg/project/common/collector.py", line 7, in <module>
ImportError: No module named 'mypack'
Auch wenn die virtualenv aktiviert ist, habe versucht, ich nur den Einstiegspunkt zu starten my-package
genannt:
Traceback (most recent call last):
File "/root/project/bin/my-package", line 11, in <module>
load_entry_point('mypackage==0.1.1', 'console_scripts', 'my-package')()
File "/root/project/lib/python3.5/site-packages/pkg_resources/__init__.py", line 560, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/root/project/lib/python3.5/site-packages/pkg_resources/__init__.py", line 2648, in load_entry_point
return ep.load()
File "/root/project/lib/python3.5/site-packages/pkg_resources/__init__.py", line 2302, in load
return self.resolve()
File "/root/project/lib/python3.5/site-packages/pkg_resources/__init__.py", line 2308, in resolve
module = __import__(self.module_name, fromlist=['__name__'], level=0)
ImportError: No module named 'mypack'
Hinweis 1: Ich präzisiere, dass ich die __init__.py
auf jedem Ordner meines Pakets habe.
Hinweis 2: Die Ordner virtualenv
befinden sich im selben Ordner wie mein Hauptprogramm.
Wie verwende ich mylittleprogram
auf mypackage
auf meinem collector
Hauptprogramm mit virtualenv
? Habe ich etwas falsch gemacht?
Danke :)