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

配置Poetry scripts遇ModuleOrPackageNotFound错误:找不到my-package

解决Poetry脚本配置的ModuleOrPackageNotFound问题

检查项目结构是否符合Poetry规范

Poetry要求项目遵循标准Python包结构,你的根目录下必须存在与my-package同名的包文件夹(需包含__init__.py文件),示例结构如下:

my-project/
├── pyproject.toml
├── my_package/          # 注意:Poetry会自动将包名中的连字符替换为下划线
│   ├── __init__.py
│   └── scripts.py       # 存放start函数的脚本文件
└── ...

调整scripts配置路径

根据脚本文件的实际位置修改配置:

  1. 若scripts.py在包内(如my_package/scripts.py),修改pyproject.toml的配置为:
[tool.poetry.scripts]
start = "my_package.scripts:start"
  1. 若scripts.py在项目根目录,需先在pyproject.toml中添加包外模块的识别配置,或者直接将脚本移入包内(更符合规范)。

确保Poetry正确识别包

  1. 确认pyproject.toml的name字段为my-package:
[tool.poetry]
name = "my-package"
version = "0.1.0"
description = ""
authors = ["Your Name <your.email@example.com>"]
  1. 执行poetry install重新安装依赖,让Poetry更新包的导入映射。

验证脚本可用性

执行poetry run start测试脚本,若仍报错,用以下命令直接排查模块导入问题:

poetry run python -c "from my_package.scripts import start; start()"

若该命令报错,说明模块路径存在问题,需重新调整项目结构或配置。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 00:20:24