Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 更改setup.py中的输出目录_Python_Setuptools_Setup.py_Distutils - Fatal编程技术网

Python 更改setup.py中的输出目录

Python 更改setup.py中的输出目录,python,setuptools,setup.py,distutils,Python,Setuptools,Setup.py,Distutils,我正在使用setuptools中的setup创建一个setup.py,我想知道是否可以通过编程方式更改输出目录,从而将其从dist/更改 我知道您可以使用--dist dir标志从命令行执行此操作,但我希望能够从setup.py文件中执行此操作 有人有什么想法吗?您需要重写以下代码: 其他b列表*命令。谢谢您的建议。所以看起来它不是设置的kw参数之一,那么?我认为重写sdist有点过头了。您可以将dist\u dir传递到setup(),但您需要有条件地这样做:对于非bdist.*命令,不要这样

我正在使用setuptools中的setup创建一个
setup.py
,我想知道是否可以通过编程方式更改输出目录,从而将其从
dist/
更改

我知道您可以使用
--dist dir
标志从命令行执行此操作,但我希望能够从
setup.py
文件中执行此操作


有人有什么想法吗?

您需要重写以下代码:


其他
b列表*
命令。

谢谢您的建议。所以看起来它不是
设置的kw参数之一,那么?我认为重写sdist有点过头了。您可以将
dist\u dir
传递到
setup()
,但您需要有条件地这样做:对于非
bdist.*
命令,不要这样做。
from distutils.command.bdist import bdist as _bdist
from distutils.command.sdist import sdist as _sdist

dist_dir = 'my-dist-dir'

class bdist(_bdist):
    def finalize_options(self):
        _bdist.finalize_options(self)
        self.dist_dir = dist_dir

class sdist(_sdist):
    def finalize_options(self):
        _sdist.finalize_options(self)
        self.dist_dir = dist_dir

setup(
    cmdclass={
        'bdist': bdist,
        'sdist': sdist,
    },
    …
)