2014-09-11 41 views
1

我只注意到一个奇怪的事实与setuptools的(实际上,我需要3个小时找到原因):Python的鸡蛋package_dir ..似乎打破需要

  • 构建具有以下设置一个鸡蛋()调用
setup( 
    name='SimpleEgg', 
    version='1.0', 
    packages=['SimpleEgg'], 
    long_description="", 
    package_dir = {'': '..'}, 
    classifiers=[], 
    install_requires=[] 
) 
  • 复制鸡蛋站点包/
  • 执行以下命令
from pkg_resources import require 
require("SimpleEgg") 

抛出pkg_resources.DistributionNotFound:SimpleEgg

当我改变我的目录布局,这样我可以删除package_dir线,一切正常。

即使使用软件包目录参数,是否可以获得工作蛋?

贝斯特的问候,彼得

+1

鸡蛋包是棘手的,至少,它发生在我身上。然后,当我解决了所有问题时,我创建了一个名为https://pypi.python.org/pypi/machete/的工具,该工具生成工作代码目标以成为一个蛋包。也许你可以试试看。 – Lovato 2014-09-11 12:58:26

回答

1

在大多数情况下,你不需要package_dir指令。

阅读本setuptools tutorial了解更多信息:

这个指令,如果你提供一个特定的目录作为参数传递给 find_packages时才需要。如果您省略find_packages的第一个参数,您可以放心地忽略此指令。