Jus*_*tin 5 python pip setuptools
我正在一个项目中,其中一个依赖项实际上是一个.whl
不在pypi 上的依赖项(即,我必须直接从作者那里下载轮并直接pip
安装它)。在我的setup.py
文件中,有没有办法做类似的事情:
install_requires=[
'library.whl',
'matplotlib==2.2.2',
'numpy==1.14.2',
'opencv-python==3.4.0.12',
'Pillow==5.1.0',
'PyYAML==3.12',
],
Run Code Online (Sandbox Code Playgroud)
还是沿着这些路线,因为它不在pypi上(我只是将其添加library.whl
到MANIFEST.in
文件中?)?如果没有,是否有针对这种情况的推荐方法?理想情况下,我想在setup.py
文件中解决此问题,这样我就可以轻松安装一个库pip install
一种替代方法是使用pip要求文件来安装依赖项。需求文件指定每个库和所需的版本。您可以使用 URL 来指向您的方向盘。
\n\n例子:
\n\nhttp://host/path/to/library.whl\nmatplotlib==2.2.2\nnumpy==1.14.2\nopencv-python==3.4.0.12\nPillow==5.1.0\nPyYAML==3.12\n
Run Code Online (Sandbox Code Playgroud)\n\n只需将 \xe2\x80\x98library\xe2\x80\x99 指定到您的setup.py
文件即可。
编辑
\n\n最佳实践是拥有一个额外的 PyPi 服务器,例如DevPi。并更改您的 pip配置文件以添加此存储库。当然你library.whl
必须被推送到这个私人服务器中。
示例pip.conf
:
[global]\nindex-url = http://yourserver/group/user/\n\n[install]\ntrusted-host = yourserver\n\n[download]\ntrusted-host = yourserver\n\n[list]\nformat = columns\n
Run Code Online (Sandbox Code Playgroud)\n\n您可能还需要配置您的.pypirc
文件:
[distutils]\nindex-servers = pypi\n private\n\n[pypi]\nrepository: http://pypi.python.org/pypi\nusername:your-username\npassword:your-password\n\n[private]\nrepository: http://yourserver\nusername:your-login\npassword:your-password\n
Run Code Online (Sandbox Code Playgroud)\n\n这样你就可以将你的版本推送到你的私人服务器上:
\n\npython setup.py bdist_wheel upload -r private register -r private\n
Run Code Online (Sandbox Code Playgroud)\n
归档时间: |
|
查看次数: |
1131 次 |
最近记录: |