使用distutilssetuptools在安装后执行Python脚本

使用distutilssetuptools在安装后执行Python脚本,第1张

使用distutils / setuptools在安装后执行Python脚本

解决这些缺陷的方法是:

  1. 获取
    setup.py
    从执行的Python解释器的完整路径
    sys.executable
  2. 继承自的类
    distutils.cmd.Command
    (例如
    distutils.command.install.install
    我们在此处使用的类)实现该
    execute
    方法,该方法以“安全方式”(即尊重空运行标志)执行给定功能。

但是请注意,该

--dry-run
选项当前已损坏,无论如何都无法正常工作。

我得到了以下解决方案:

import os, sysfrom distutils.core import setupfrom distutils.command.install import install as _installdef _post_install(dir):    from subprocess import call    call([sys.executable, 'scriptname.py'],         cwd=os.path.join(dir, 'packagename'))class install(_install):    def run(self):        _install.run(self)        self.execute(_post_install, (self.install_lib,),          msg="Running post install task")setup(    ...    cmdclass={'install': install},)

请注意,我将类名

install
用于派生类,因为这
python setup.py --help-commands
将使用。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5623529.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存