Python 模块:在设置期间使用但未安装
Python module: use during setup but not to be installed
我如何向 Setuptools 指定一个模块在安装期间应该可用,但在 运行 时间内没有安装?
我已经为我的 Python 发行版创建了一个扩展命令(在本例中它会自动生成版本元数据),并且该模块包含在项目树中。
foo-project/
setup.py
MANIFEST.in
foo/
__init__.py
bar.py
version_info.py
对于运行 Setuptools 命令(例如egg_info
或develop
),version_info
模块由setup
导入。因此该文件 version_info.py
需要成为源代码分发的一部分。
但是将该文件放入源代码分发版中(默认情况下?)也会自动将其包含在任何二进制分发版中,例如 bdist_wheel
或 bdist_dumb
。这是错误的,因为在 运行 时不需要该文件,因此不应安装。
如何指定该文件是安装命令的源代码分发中需要的 Python 模块,但不被安装?
您可以在 MANIFEST.in
file 中包含 源分发文件 ;在构建包含 setup.py
文件的源代码分发时包含这些文件。
不要将文件包含在 data_files
或 package_data
或 py_modules
中,它不会包含在二进制分发中(就像 setup.py
不会是)。
我如何向 Setuptools 指定一个模块在安装期间应该可用,但在 运行 时间内没有安装?
我已经为我的 Python 发行版创建了一个扩展命令(在本例中它会自动生成版本元数据),并且该模块包含在项目树中。
foo-project/
setup.py
MANIFEST.in
foo/
__init__.py
bar.py
version_info.py
对于运行 Setuptools 命令(例如egg_info
或develop
),version_info
模块由setup
导入。因此该文件 version_info.py
需要成为源代码分发的一部分。
但是将该文件放入源代码分发版中(默认情况下?)也会自动将其包含在任何二进制分发版中,例如 bdist_wheel
或 bdist_dumb
。这是错误的,因为在 运行 时不需要该文件,因此不应安装。
如何指定该文件是安装命令的源代码分发中需要的 Python 模块,但不被安装?
您可以在 MANIFEST.in
file 中包含 源分发文件 ;在构建包含 setup.py
文件的源代码分发时包含这些文件。
不要将文件包含在 data_files
或 package_data
或 py_modules
中,它不会包含在二进制分发中(就像 setup.py
不会是)。