2017-06-22 113 views
0

嗨!virtualenv找不到包 - 没有名为“mypack”的模块

我试过在我的主程序(名为collector)上使用我创建的包(名为mypackage)。 mypackage定义与下面的setup.py

name = "mypackage" 
[...] 
packages = find_packages(), 
include_package_data = True, 
exclude_package_data = { '': ['README.md'] } 
[...] 
entry_points = { 
    'console_scripts': [ 
     'my-package=mypack.mypack:main' 
    ] 
}, 

我想用一个小程序提出这个包,这通常会被如下呼吁collector

from mypack.common.prog import mylittleprogram 

我试图安装mypackage在virtualenv上,然后(重新)安装我的主程序。然后我执行它,并有我有错误:

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' 

此外,当virtualenv中被激活,我只是试着推出名为my-package入口点:

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' 

注1:我确切地说我的包装上的每个文件夹都有__init__.py

注意2:virtualenv文件夹与我的主程序位于同一文件夹中。

如何使用mylittleprogram 我的collector主程序中有virtualenv?我做错了什么?

谢谢:)

回答

0

有问题,我不得不通过以下命令来安装我的包:

python setup.py develop 

然后软件包识别。这个命令必须在virtualenv被激活时执行,并在包的目录中执行。

希望这将有助于未来的人!

相关问题