我正在用python和setuptools创建一个包。我正在使用MANIFEST.in文件来包含我的包使用的依赖项。我指定清单的内容如下:
recursive-include package/dependency_directory *
包的构建和安装没有错误。但是,当我从其中一个入口点调用包时,我看到脚本失败,因为它找不到MANIFEST.in内容的正确文件路径
包正在查看的路径如下:
/Users/Xerez/Library/Caches/Python-Eggs/qasar-0.1-py2.7.egg-tmp/qasar/fastqc/fastqc
软件包的其余部分安装在:
/Users/Xerez/anaconda2/lib/python2.7/site-packages/qasar-0.1-py2.7.egg
但是,在我的IDE中,当我询问包在哪里时,使用以下代码:
DATA_PATH = pkg_resources.resource_filename('qasar', 'fastqc/fastqc')
我得到以下文件路径:
/Users/Xerez/anaconda/lib/python2.7/site-packages/qasar-0.1-py2.7.egg/qasar/fastqc/fastqc
当我在IDE中使用这个路径运行脚本时,一切正常。我知道MANIFEST.in安装在与包的其余部分不同的位置,并且我的IDE正在调用另一种不同形式的python。如何强制安装将所有内容放在同一版本的anaconda/位置
我将a link附加到一个bitbucket存储库,该存储库有一个可帮助回答此问题的包的精简版本
很抱歉,如果这个问题的答案是琐碎的,但我一直未能找到一个解决这个问题的办法,有一点,并决定寻求帮助。提前谢谢
最终,我能够通过在docker容器中安装包来解决多个python路径问题,该容器只安装了一个版本的python和anaconda。然而,这种解决方案既不理想也不优雅
相关问题 更多 >
编程相关推荐