我正在尝试为我正在编写的pip库运行一些预安装命令。我的设置文件如下:
from setuptools import setup
from setuptools.command.install import install
class CustomInstall(install):
def run(self):
install.run(self)
print "TEST"
setup(
...
cmdclass={'install': CustomInstall},
...)
基于Run custom task when call `pip install`。
但是,pip安装不会打印“TEST”。我在这里做错了吗?如何让这个setup.py文件实际打印?
更新:以下是FYI,确实引发了属性错误:
from setuptools import setup
from setuptools.command.install import install
class CustomInstall(install):
def run(self):
install.run(self)
raise AttributeError
setup(
...
cmdclass={'install': CustomInstall},
...)
答案 0 :(得分:0)
我遇到了类似的问题,自定义安装类打印到<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select>
<option value="opt1">red</option>
<option value="opt2">green</option>
<option value="opt3">blue</option>
</select>
<div id="opt1" class="container red"></div>
<div id="opt2" class="container green"></div>
<div id="opt3" class="container blue"></div>
。在我的例子中,实际运行了自定义命令,但看起来输出正由sys.stdout
过滤。
我相信这在这里有详细讨论: https://github.com/pypa/pip/issues/2732#issuecomment-97119093