2016-02-27 66 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

相關問題