pja*_*ain 9 python egg setuptools setup.py
我想将我的项目安装为文件夹而不是.egg文件.所以我在setup.py文件中的setup函数中使用了zip_safe = False
但是当我运行这个时,我的项目被安装为.egg文件而不是/Library/Python/2.7/site-packages中的目录.下面是我的setup.py文件
from setuptools import setup, find_packages
setup(name = "my-project",
version = "0.1",
description = "Python version of my-project",
author = "Priyal Jain",
author_email = "jpriyal@gmail.com",
license="Apache 2.0",
keywords="Python my project",
package_dir={'': 'lib'},
#packages=find_packages('lib'),
packages= ['abc','pqr'],
package_data={
'abc.sample': ['*.yml']
},
zip_safe= False,
scripts = ["abc"],
classifiers=[
'Environment :: Console',
'Intended Audience :: Developers',
'Intended Audience :: Information Technology',
'Intended Audience :: System Administrators',
'Intended Audience :: Telecommunications Industry',
'Operating System :: OS Independent',
'Programming Language :: Python',
],
)
Run Code Online (Sandbox Code Playgroud)
我错过了什么?有没有其他方法将python项目安装为目录而不是.egg文件
yam*_*amm -2
您首先必须构建包。
# navigate into your python-package (where the setup.py is located)
python setup.py sdist
Run Code Online (Sandbox Code Playgroud)
这将创建一个dist/
字典并创建一个 .tar.gz 文件
然后使用 pip 安装该软件包
pip install dist/<your-packagename>
Run Code Online (Sandbox Code Playgroud)
如果您使用:
python setup.py install
Run Code Online (Sandbox Code Playgroud)
它将作为鸡蛋安装。
编辑:
基本方法:构建包 --> .tar.gz 或 .zip,然后将包解压到您需要的位置。你从 python 打包中获得 0 好处。
将脚本参数添加到您的 setup()
setup(
# ...
scripts = ['path-to/myscrypt',],
)
Run Code Online (Sandbox Code Playgroud)
你的文件名称myscript
(没有 .py 结尾)应该在第一行有这个
#!/usr/bin/env python
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4037 次 |
最近记录: |