2016-02-27 65 views
2

我正在创建一个setup.py来分发我的应用程序。 这个应用程序有很多可以通过pip安装的依赖关系,它也有一些自定义的依赖关系,不能从PyPI安装。如何在Python中的setup.py中包含和安装本地依赖项?

所以,我创建了将被纳入分布和后setup.py必须安装一个相关性的custom_package_0.1.whlinstall_requires安装一切。

想象一下下面的程序结构:

my_app/ 
    win_deps/custom_package_0.1.whl 
    my_app/ 
     __init__.py 
     main.py 
     setup.py 
     setup.cfg 

我该怎么办呢?

+0

我有一个类似的问题,并找到了满意的答案[here](http://stackoverflow.com/questions/26059111/build-a-wheel-egg-and-all-dependencies-for-a-python -project) –

回答

3

有几种选择,你可以选择:

  1. 上传包到一些服务器,并提供URL与dependency_links
  2. 您可以将您的python软件包放入您的my_app包中,并将其与packages参数链接起来,而不是使用wheel文件。
  3. 一个更黑客的方法是使用setuptools api,并自行安装该软件包。
+0

对于'2',我应该怎么做?我将“win_deps”移动到“my_app”并添加了packages =(['win_deps']),但运行'python2 setup.py install'不会自动安装“win_deps”目录下的所有'.whl'软件包 – minerals

+1

意思是2不是提供'whl'软件包,而是将整个软件包目录'custom_package_0.1'移动到这个软件包目录中。 –

+0

哦,你的意思是把'custom_package_0.1'源文件移动到'win_deps'中?准确地说是 – minerals

相关问题