如何解决Turbogears2:应用程序未作为子包启动
我正在尝试将 turbogears 部署为我的主应用程序 frontend
的子包 MainApp
。以下是我的项目结构:
.
├── MainApp
│ ├── MainApp.egg-info
│ ├── backend
│ ├── frontend
│ └── __init__.py
├── LICENSE.txt
├── MANIFEST.in
├── README.md
├── development.ini
├── setup.cfg
├── setup.py
├── test.ini
不幸的是,当我尝试在项目文件夹中使用 gearBox serve --reload --debug
启动它时总是出错:
pkg_resources.distributionNotFound: The 'MainApp.frontend' distribution was not found and is required by the application
我了解这是由于 development.ini
中的定义:
[app:main]
use = egg:MainApp.frontend
我尝试了不同的替代方法,调用 egg:MainApp
或 egg:frontend
,也在 MainApp
文件夹中复制了 development.ini
- 没有任何效果。我错过了什么?这甚至可能吗?
谢谢。
解决方法
我自己找到了解决方案。
基本上我做了三件事来解决这个问题
- 我在
egg:MainApp
中使用了development.ini
- 我将 setup.py 中的包从
packages=find_packages(where='MainApp',exclude=['ez_setup'])
更改为packages=find_packages(exclude=['ez_setup'])
- 我再次在项目文件夹中运行
pip install -e .
,它创建了必要的 .egg-info 文件夹
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。