You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Poetry包内模块导入失败求助:无法导入recon.config

解决Poetry包中ModuleNotFoundError: No module named 'recon.config'问题

项目结构确认

你的实际项目结构如下:

mainproject/
└── recon/
    ├── pyproject.toml
    └── recon/
        ├── main.py
        └── config.py

错误原因

直接运行main.py时,Python会将当前脚本所在目录(mainproject/recon/recon/)加入sys.path,但项目根目录(包含pyproject.toml的recon/)不在sys.path中,导致Python无法识别外层recon作为合法包。

解决方案

方法1:以模块方式运行脚本(推荐)

在包含pyproject.toml的recon目录下,执行以下命令:

poetry run python -m recon.main

若已激活虚拟环境,可直接执行:

python -m recon.main

这种方式会自动将项目根目录加入sys.path,Python能正确识别recon包,从而正常导入recon.config。

方法2:手动调整sys.path(临时方案)

若需直接运行main.py,可在脚本开头添加以下代码,手动将项目根目录加入sys.path:

import sys
from pathlib import Path
# 将包含pyproject.toml的目录加入sys.path
sys.path.append(str(Path(__file__).parent.parent))

添加后即可正常执行from recon.config import *。

方法3:确认pyproject.toml配置完整性

确保你的pyproject.toml配置完整,核心配置示例如下:

[tool.poetry]
name = "recon"
version = "0.1.0"
authors = ["你的名字 <你的邮箱>"]

[tool.poetry.dependencies]
python = "^3.8"  # 根据你的Python版本调整

[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"

packages = [
    { include = "recon" }
]

配置完成后,重新执行安装命令:

poetry -C recon/ install

内容的提问来源于stack exchange,提问作者SiddharthaRT

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 14:36:01