我正在尝试将一个单独的git repo安装到我的python项目中。当我运行pip install git+https://github.com/XxdpavelxX/myapp
时,Pip安装似乎有效。但是,当我运行我的代码时,我收到以下错误。
这是我的应用程序:https://github.com/XxdpavelxX/myapp
ModuleNotFoundError: No module named 'myapp'
ERROR: could not load /Users/myUser/stuff/callerFile.py
这是callerFile.py
(在一个单独的git repo中):
from myapp import test
print test.random_print()
我怀疑这是pip install
相关。当我运行pip install git+https://github.com/XxdpavelxX/myapp
它似乎通过,但在我的python venv/lib/python3.7/site-packages
内部我只看到myapp-1.0py3.7.eggs-info
而不是实际的包。谁知道我做错了什么?我是否需要将我的库添加到pypi才能使用?
编辑:添加了我正在测试的github repo的实际网址。
创建一个名为myapp的文件夹,并将__init__.py和test.py文件移动到该文件夹。
将以下行添加到setup.py(我在url后添加),
packages=['myapp'],
现在安装将成功,您可以导入您的包。
您无需将代码发布到pypi。我建议你使用标签#egg
来设置包名。因此,点状态就像
pip install git+https://github.com/myGitUser/myLibrary#egg=myLibrary
你的包既没有py_modules
也没有packages
,因此在安装时它不会安装任何可导入的东西。
我的建议是将你的__init__.py
重命名为myapp.py
并将其添加到setup.py
:
setup(
…
py_modules=['myapp'],
…
)