我正在将一个库移植到python 3并使其与python 2保持兼容。
我有一个像这样的目录结构:
mypackage/
lib/
engines/
__init__.py
setup.py
<other_dirs>/
我希望设置在mypackage目录中调用mypackage
时将python setup.py install
识别为包。
所以我设置了packages = ["mypackage"]
。我的本地构建通过,但Travis和Appveyor上的构建失败并显示错误:
Traceback (most recent call last):
File "setup.py", line 26, in <module>
from mypackage import VERSION
ImportError: No module named mypackage
(VERSION
变量在__init__.py
)
我正在使用python2和from __future__ import absolute_import
来维护Python 3的兼容性。
我知道如何让travis和appveyor构建系统识别我的包裹吗? 我找到了一个类似的问题,答案是为Travis添加一个符号链接到TRAVIS_BUILD_DIR。在Appveyor上没什么。