- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
pip 是否能够递归搜索文件系统路径并安装包及其依赖项?例如,给定以下文件结构(文件未显示)pip install packageA -f C:\packages\
不起作用。
C:\packages\
C:\packages\packageA\
C:\packages\packageA\1.0.0
C:\packages\packageA\1.0.1
C:\packages\packageB\
C:\packages\packageB\2.2.1
C:\packages\packageB\2.2.4
此外,这些包可以是带有 setup.py 文件的纯源代码吗?或者它们是否需要像 wheel 或 zip 文件一样的二进制文件。最后,有没有办法解决依赖关系?例如,如果 packageA 需要 packageB 的一个版本,pip 可以从我的文件夹中获取那个版本的 packageB 吗?我需要指示位置和内容的 html 文件吗?
我知道我可以将 pip 直接指向本地路径 (pip install C:\packages\packageA\1.0.0
),但我希望它的功能就像 PyPI 中可用的包一样.例如,如果用户键入 pip install packageB
或 pip install requirements.txt
并且该需求文件包含本地存在但 PyPI 中不存在的包,它就可以正常工作。 (我可以在配置文件中设置本地包存储路径,因此 pip 命令不需要 -f 参数)
基本上,我想在没有网络服务器的情况下使用文件系统复制 PyPI 功能(出于安全考虑,我们不允许运行网络服务器)。任何见解将不胜感激。
最佳答案
我想通了。我使用了一个名为 pip2pi 的包.这个包有一个名为 dir2pi 的命令。我创建了一个包含 tar.gz 文件的目录。每个 tar.gz 文件都是用 this layout 创建的 Python 包.为了识别版本,我添加了一个连字符,然后使用了语义版本控制。
目录如下所示:
C:\packages\package_a-1.0.8.tar.gz
C:\packages\package_a-1.1.0.tar.gz
C:\packages\package_b-2.0.0.tar.gz
C:\packages\package_c-1.0.5.tar.gz
然后我跑了,dir2pi C:\packages -S
。这创建了必要的 HTML 文件和文件夹布局。在文件夹的根目录下,创建了一个名为 simple 的文件夹。 simple 这个名字似乎是 PEP 503 的东西。在简单的内部,文件夹结构如下所示:
C:\packages\simple\index.html
C:\packages\simple\package_a
C:\packages\simple\package_a\index.html
C:\packages\simple\package_a\package_a-1.0.8.tar.gz
C:\packages\simple\package_a\package_a-1.1.1.tar.gz
C:\packages\simple\package_b
C:\packages\simple\package_b\index.html
C:\packages\simple\package_b\package_b-2.0.0.tar.gz
C:\packages\simple\package_c
C:\packages\simple\package_c\index.html
C:\packages\simple\package_c\package_c-1.0.5.tar.gz
这显然是 pip 的兼容文件/文件夹布局。
每个 index.html 文件都包含指向其相邻文件和文件夹的链接。例如,C:\packages\simple\index.html
看起来像这样:
<html><head><title>Simple Index</title><meta name='api-version' value='2' /></head><body>
<a href='package_a/'>package_a</a><br />
<a href='package_b/'>package_b</a><br />
<a href='package_c/'>package_c</a><br />
</body></html>
C:\packages\simple\package_a\index.html
看起来像这样:
<a href='package_a-1.0.8.tar.gz'>package_a-1.0.8.tar.gz</a><br />
<a href='package_a-1.1.1.tar.gz'>package_a-1.1.1.tar.gz</a><br />
现在有了正确的 HTML 文件和文件夹结构,我告诉 pip 在 C:\packages\simple
文件夹中查找包。我通过编辑 pip.ini 文件(位置因系统而异)并添加以下行来完成此操作:
[global]
extra-index-url = file:///c:/packages/simple
或者,我也可以将这个文件夹作为参数传递给 pip,如下所示:
pip install --index-url=file:///c:/packages/simple package_a==1.1.1
关于python - 如何让 pip 递归搜索包和依赖项的目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49372219/
是否有可能进行标准的 war 部署,它可以部署在 tomcat 上,也可以构建为 OSGi 包并与 OSGi 容器 tomcat 中的其他包一起部署(我认为是处女座)? 最佳答案 是的,WAR 和 W
我在尝试将包从根目录移动到用户帐户时弄乱了我的 R 安装。我尝试通过 apt-get install 卸载(使用 --purge)并重新安装 R(r-base r-base-dev)。但我得到了错误
请原谅模糊的标题。 我正在尝试构建一个包来帮助我使用第三方云存储 API(例如 Firebase 存储),添加 Combine 支持等。这个包对 CloudKit 做同样的事情。一切都编译得很好,但是
我想将所有 Excel 工作表读入 R 列表 df。我使用的代码是: file <- file.choose() name <- basename(file) require(XLConnect) w
我正在尝试使用 R 包 RecordLinkage,并且正在使用 two articles包作者作为使用指南,除了包 documentation . 我正在使用 2 个大型数据集(超过 100k 行)
基本上我想从 applescript 包中启动一个 Python 脚本 所以我已经将文件 (Controller.py) 捆绑在包中 我需要运行的脚本是 执行 shell 脚本 "PYTHONPATH
我有脚本: $Test = (dotnet list C:\Tasks.Api.csproj package) 它提供了一些包(最后有 2 个空格!): Project 'Tasks.Api' has
我正在使用这个 mopabootstrap bundle ,按照所有说明进行操作。我收到以下错误: An exception has been thrown during the compilatio
我们的存储库中有 3 个包(A、B、C)。每个包都有 dist/some-data。 (而且,这些包裹数量可能会增加) 使用 3 个不同的 dist 路径对 PublishBuildArtifacts
我想结合OSGI构建一个Web应用程序以使其模块化。但我有点困惑。我使用简单的 Hello Word Servlet 构建了一个 OSGI Web 包。有用。但现在,我怎样才能创建一个“完整的”Web
我要求对包目录中的包和子目录进行明确的说明。 一个场景 - 假设我有一个目录 food,其中包含一个子目录 Fruit,我将其用作包名称。 我有一个名为 apple.java 的 java 文件,其中
我怎么说 MXML 组件在某个包中?好吧,它在不同的文件夹中......我知道怎么做 ActionScript......但是当我在 MXML 中这样做时,我没有明确声明包,因为我不知道如何以及何时将
我在 Google App Engine 上进行开发,这意味着我有一个部署命令 (appcfg.py update),它只需将整个目录的副本上传到 App Engine 并在那里运行。 我看到很多在线
我在计算包和 channel 之间的多对多关系时遇到了问题。每个 channel 都属于一个包,但一次有多个包。 IE: Channel 1 属于 Package 1,2,3,4,5 Channel
在我的数据库接口(interface)库中 jOOQ ,我想添加对 Oracle(或 DB2 等)包的支持。我已经实现了存储过程/函数支持,其中每个存储对象都被建模为生成的 Java 类。比如这个存储
我对 gradDescent package 有理解上的问题在 R 中。假设我有一个包含一个自变量的数据集,我想对该数据运行简单的线性回归,并使用批量梯度下降 (GD) 算法估计模型及其参数。 例如,
我使用带有 CommonJS 模块输出的 TypeScript 和 webpack 创建一个浏览器包,使用 libraryTarget: 'var'在 webpack 中,这样我的库将作为全局变量“F
我是 django 的新手,我一直在浏览 djangopackages 站点。我想知道那些“django”包和不是 django 包的 python 库之间有什么区别。 例如,sendgrid 有一个
我已经在 Py2.7 中创建了一个包,我正在尝试使其与 Py3 兼容。问题是如果我在 __init__.py 导入构建返回这个错误 error in daysgrounded setup comman
有人能解释一下 egg-info 目录是如何与它们各自的模块相关联的吗?例如,我有以下内容: /usr/local/lib/python2.5/site-packages/quodlibet/ /us
我是一名优秀的程序员,十分优秀!