哪个setup.py命令将更新站点包中的源?

我跑了

python setup.py sdist --formats=gztar,zip bdist_wheel

然后

python setup.py install

结果是egg文件在site-packages目录中创建,但不是 <package-name>/<package-source files>目录中的:

$ls  /usr/local/lib/python3.7/site-packages/infix*
/usr/local/lib/python3.7/site-packages/infixpy-0.0.3-py3.7.egg
/usr/local/lib/python3.7/site-packages/infixpy.egg-link
/usr/local/lib/python3.7/site-packages/infixpy-0.0.4-py3.7.egg

请注意,目录infix不是 创建的-因此,没有源代码被复制。在此本地安装过程中我缺少什么/不了解什么?

更新我运行时

  pip3 install infixpy

还有一个附加目录infix,源代码包含在该目录中。运行local的{​​{1}}或devel模式不会导致代码被更新,并且-至关重要的- stacktraces 不能运行任何python代码(即使在全新的setup.py install副本)仅显示较旧的/ ipython安装的代码。特别是文件pip3,所以我发现源文件是:

__init__.py

/usr/local/lib/python3.7/site-packages/infixpy/__init__.py 可执行文件使用情况的准确反映。 @phd表示源代码已包含在python中。因此,我不了解egg中的源代码和该子目录中的源代码之间的关系-在我的最新运行中,这完全丢失了。

l239984503 回答:哪个setup.py命令将更新站点包中的源?

以下命令产生的结果略有不同:

  • pip install .:安装为未压缩的软件包目录和XXX.dist-info目录
  • pip install infixpy:与先前版本相同,但是从(远程)索引(默认为PyPI)而非本地目录中安装
  • python setup.py install:安装为压缩文件XXX.egg
  • pip install --editable .python setup.py develop:未安装,但链接为XXX.egg-link文件

因此,根据输入的命令,site-packages的内容是不同的。

现在这就是您所说的:

$ls  /usr/local/lib/python3.7/site-packages/infix*
/usr/local/lib/python3.7/site-packages/infixpy-0.0.3-py3.7.egg
/usr/local/lib/python3.7/site-packages/infixpy.egg-link
/usr/local/lib/python3.7/site-packages/infixpy-0.0.4-py3.7.egg```

这有点令人惊讶,因为从理论上讲,您的项目有3个版本可以导入(0.0.30.0.4 develop / 可编辑)。在这种情况下,我不确定Python解释器使用哪个。您可能需要运行pip uninstall infixpy几次,以重新开始并减轻这些不确定性。然后,您可以尝试上述命令,并查看它们如何影响site-packages的内容以及检查pip show infixpy的结果。

本文链接:https://www.f2er.com/3147233.html

大家都在问