我今天尝试打包一个 django 应用程序。这是一个大宝贝,而且有了安装文件,我必须在'package'参数中手动编写所有包和子包。然后我必须找到一种方法来复制固定装置、htmls/css/图像文件、文档等。
这是一种糟糕的工作方式。我们是计算机科学家,我们进行自动化,这样做毫无意义。
当我更改我的应用程序结构时会怎样?我必须重写 setup.py。
还有更好的方法吗?一些自动化工具?我不敢相信像 Python 这样比重视开发人员时间的语言让打包变得如此繁琐。
我希望最终能够使用简单的 pip 安装来安装该应用程序。我知道构建,但它并不简单,而且对 pip 不友好。
最佳答案
至少如果你使用 setuptools
(stdlib 的 distutils
的替代品)你会得到一个很棒的函数,叫做 find_packages()
当从包根运行时,返回一个包名称列表,以适合 packages
参数的 pip 表示法。
这是一个例子:
# setup.py
from setuptools import find_packages, setup
setup(
#...
packages=find_packages(exclude='tests'),
#...
)
附注包装吸收每一种语言和每一种系统。无论你怎么切片,它都很糟糕。
关于python - 有没有更简单的方法用 Python 打包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3885504/