当前位置: 首页 > 面试题库 >

Python setuptools的依赖项自动发现功能?

郎伟兆
2023-03-14
问题内容

在使用打包Python应用程序时setuptools,我在install_requires列表中填充了应用程序的所有PyPI依赖项。我发现自己手动梳理所有来源以找到这些资源。这是正确的方法吗?还是可以通过某种方式自动填充此列表?


问题答案:

从我的角度来看,install_requires应仅列出项目的 直接
依赖关系(而不是间接的,即依赖关系的依赖关系)。因此,它通常是一个相对简短的列表,应该可以手工整理,就像您从头开始精心挑选图书馆的方式一样。

在常见的情况,使用 TOX 结合一个 掉毛 工具,如
pylint的
会让你知道,如果一些 进口
解决不了,这很可能意味着库将从丢失install_requires

如果您已经有很多依赖关系,但没有跟踪最新的依赖关系install_requires,那么我相信像
pipreqs
pigar
这样的工具可能会有所帮助(可能还有其他类似的工具,但这就是我偶然发现的工具)当在浏览以下类似的问题:1,2)。



 类似资料:
  • 我正在使用Intellij IDEA中的一个Java项目,其中我们有许多内部、独立的Maven依赖项。我将这些依赖项的源代码作为模块导入到我的IDEA项目中,但是当我选择转到- 为了解决这个问题,我需要做以下工作: 使用内部 Maven 依赖项在模块上打开模块设置 在“依赖关系”列表中查找并删除内部 Maven 模块 添加新的模块依赖项,然后选择与内部 Maven 依赖项对应的导入模块 有没有办法

  • 问题内容: 我正在开发一个小型Java EE Hibernate Spring应用程序,出现错误: 这是我的控制器ArticleControleur,其中包含用于恢复文章列表的功能: 这是我的articleService: 这是我的应用程序上下文: 问题答案: 该错误表明不是注册的Bean。添加其中包含将在你的应用程序上下文中自动装配的bean的软件包: 或者,如果你想将所有子包包括在com.bd

  • 我运行命令来检查我的java项目中未使用的jar,部分结果如下所述: [警告]找到未使用的声明依赖项: [警告] 组织.Spring框架工作.boot:Spring启动器:jar:2.0.3.发布:编译 [警告] 组织Spring框架工作.启动:Spring启动器测试:jar:2.0.3.发布 :编译 [警告] 组织.springframework.boot:Spring启动器-启动器-jdbc:

  • 问题内容: 我已经建立了两个RPM套件 取决于存在的文件,它在RPM软件包中正确反映,如下所示: 由于缺少依赖项,安装失败。 如何确保在安装过程中自动安装? 我确实按照此处所述尝试了该选项,但对我而言不起作用。 还有其他办法吗? 谢谢你的帮助。 问题答案: 创建一个(本地)存储库,并使用它来为您解决依赖关系。 CentOS Wiki有一个漂亮的页面,提供有关此操作方法的信息。CentOS Wiki

  • 然而,似乎什么也没发生。没有变化,控制台输出没有提到新版本(这就足够了)。 我的如下所示:

  • 我正在开发一个具有可重用逻辑的公共java库,以与一些AWS服务交互,这些服务将依次被多个消费者应用程序使用。出于这里概述的原因,以及Spring Boot似乎为SQS集成之类的东西提供了大量无模板代码的事实,我决定将此公共库实现为具有自动配置的定制Spring Boot启动器。 我也是Spring框架的新手,因此遇到了一个问题,即我的自动配置类的实例变量没有通过AutoWired注释进行初始化。