问题标签 [egg]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - python:带有一个文件源文件的 python 鸡蛋的简单示例?
我不太确定如何构建一个非常简单的单文件源模块。是否有一个可以构建为 python .egg 的示例模块?
从setuptools 页面看起来很简单,你只有你的setup.py
文件,然后在某个地方至少有一个其他 .py 文件,我可以构建一个 .egg 文件 OK,甚至使用 安装它easy_install
,但我似乎看不到import
文件从python内部。(注:使用 2.6.4)
这是我的示例目录:
设置.py:
sconsconfig.py:
如果我运行setup.py bdist_egg
它然后创建一个 egg 文件,但如果我查看它,没有 .py 源文件....
python - 为什么 sys.path 显示不存在的项目(导致导入问题)?
我看到了一些额外的项目,sys.path
其中 1) 不存在和 2) 导致导入问题(特别是Nose
)。
foo
基本上,我创建了一个在多个项目中使用的包(我们称之为)。我目前正在处理的项目可以foo
毫无问题地导入所有内容,但是当我运行时Nose
出现导入错误:
当我吐出路径时,我得到:
/path/to/my-project/foo
不存在。如果我弹出前 2 个条目,sys.path
一切正常。
有人可以向我解释为什么这些项目会出现,实际上,列表中唯一应该出现的项目是安装到 virtualenv 中的项目吗?
以及如何阻止这种情况在未来发生?和setup.py
in 有关系foo
吗?
python - 创建 Python 包结构和 egg 的简单说明是什么?
我刚刚完成了我的第一个(次要)Python 项目,我的老板希望我把它打包好,以便可以轻松地分发和从其他程序调用。他建议我研究鸡蛋。我一直在谷歌搜索和阅读,但我只是感到困惑。我正在查看的大多数网站都解释了如何使用已经创建的 Python 鸡蛋,或者如何从 setup.py 文件(我还没有)创建鸡蛋。我现在只有一个 Eclipse pydev 项目,其中包含大约 4 个模块和一个设置/配置文件。在简单的步骤中,我如何将其结构化为文件夹/包并将其编译为一个鸡蛋?一旦它是一个鸡蛋,我对部署/构建/使用它有什么了解?我真的是从零开始,所以不要以为我什么都知道;简单的分步说明将非常有帮助...
这些是我到目前为止一直在关注的一些网站:
- http://peak.telecommunity.com/DevCenter/PythonEggs
- http://www.packtpub.com/article/writing-a-package-in-python
- http://www.ibm.com/developerworks/library/l-cppeak3.html#N10232
我还浏览了一些 SO 问题,但还没有真正找到我需要的东西。
谢谢!
python - 我创建了一个 Python 鸡蛋;怎么办?
我终于想出了如何创建一个 Python egg 并让它工作。现在......我该怎么办?我该如何使用它?如何确保正确包含所有内容?(请简单的步骤......不仅仅是重定向到另一个网站。我用谷歌搜索过,但这让我很困惑,我希望有人可以用几个简单的要点或句子来解释它。)
编辑:
几周前我问过这个问题,现在我正在澄清,希望得到更清晰的答案......基本上,我有一个鸡蛋,我想把它带到另一台机器上,并能够使用它并导入模块来自我的(其他,不相关的)代码。我该怎么做呢?
python - 在源代码中覆盖 setup.cfg 中的 DEFINE
PySQLite 2.6.0 的源代码包含一个setup.cfg
如下所示的文件:
我想用SQLITE_OMIT_LOAD_EXTENSION
定义禁用(未设置)来构建鸡蛋。我可以通过在 setup.cfg 中取消注释该行来做到这一点,但我想在zc.buildout
环境中使用zc.recipe.egg
,zc.recipe.cmmi
或任何其他可以帮助我的方法来做到这一点。
那么,有没有一种简单的方法来安装 PySQLite 并启用扩展但不篡改setup.cfg
?
python - Python:禁用 $HOME/.python-eggs?
有没有一种简单的方法可以禁用 Python 鸡蛋缓存?我们遇到这样的情况,系统帐户需要运行导入模块的 python 程序。
由于这是一个非登录机器人帐户,它没有主目录,并且在尝试创建目录时死了/.python-eggs
。
解决此问题的最佳方法是什么?我可以将站点文件中的鸡蛋转换为不会缓存的内容.python-eggs
吗?
python - 在 Python Egg 中访问配置文件时出现问题
我有一个具有以下结构的 Python 项目:
我编写了一个 setup.py 文件,将其转换为具有相同文件结构的鸡蛋。(当我使用 zip 程序检查它时,结构似乎相同。)有趣的是,当我从 IDE 运行 Python 代码时,它工作正常并且可以访问配置文件;但是当我尝试使用egg从不同的Python脚本运行它时,它似乎无法在egg中找到配置文件。如果我将配置文件放入与调用相关的目录中Python 脚本(在 egg 外部),它可以工作——但这有点违背了拥有一个独立的 egg 的目的,它具有程序的所有功能并且可以从任何地方调用。只要不使用配置文件,我就可以使用任何类/模块并从 egg 运行任何功能......但如果他们这样做,egg 将找不到它们,因此这些功能不起作用。
任何帮助将非常感激!我们对这里的鸡蛋有点陌生,真的不知道从哪里开始。
python - 如何在不重新启动应用程序的情况下轻松安装 egg 插件并加载它?
我正在创建一个下载并安装自己的 egg 插件的应用程序,但是在 easy_install 将其解压缩到位后加载 egg 时出现问题。这就是它现在的工作方式:
- 应用程序将鸡蛋下载到临时文件夹中
- 使用 setuptools.command.easy_install.main() 将 egg 安装到 ~/.app/plugins 文件夹(由 dist-packages 上的 pth 指向)
- 此时,~/.apps/plugins/easy-install.pth 更新为新的 egg 路径
问题是 pth 直到 python 进程重新启动才重新加载,这意味着必须停止并重新启动应用程序(应用程序是一个长时间运行的进程,并且插件安装必须不需要重新启动)。
所以问题是如何以编程方式重新加载pth,以便插件入口点发现适用于新的egg,或者以某种方式让easy_install返回它安装egg的路径,所以我可以手动(使用pkg_resources)加载新插件?
我可以创建一个函数来尝试猜测 easy_install 的路径或自己解析 pth,但如果可能的话,我宁愿不这样做。
Python 2.6,安装工具 0.6c9
感谢Marius Gedminas,我现在所做的基本上是:
python - python setup.py bdist_egg 未设置软件包要求
我有一个 Pylons 应用程序,我已准备好首次将其部署到生产环境。它在 setup.py 中列出了一组简单的要求:
当我运行“python setup.py bdist_egg”时,它似乎正确地创建了 egg 文件。但是,当我将 egg 文件复制到我的生产虚拟环境并安装它时,我的依赖项都没有安装。我解压了egg文件,发现里面确实没有requires.txt。当我运行 bdist_egg 时,肯定在 .egg-info 目录中创建了一个 requires.txt。我是否错误地运行了这个命令?
python - 如何访问 Python egg 文件中的文件?
这可能是一个奇怪的要求,但这是我遇到的。我用谷歌搜索但一无所获。
我正在编写一个应用程序,该应用程序使用记录在 XML 文件中的大量常量属性/值(它们不会更改为静态文件),在我为它生成一个 egg 文件之前一切正常。
当逻辑到达 XML 访问部分时,我收到这样的投诉:/home/Workspace/my_proj/dist/mps-1.2.0_M2-py2.6.egg/mps/par/client/syntax/syntax.xml
实际上我已经在上面的路径中捆绑了 XML 文件,但似乎 Python 不知道如何访问它。
访问 XML 的代码如下...
任何的想法?