Python 常见问题 - 使用 poetry build 打包构建失败,报 ModuleOrPackageNotFound No file/folder found for package filesystemfastapi

简介: Python 常见问题 - 使用 poetry build 打包构建失败,报 ModuleOrPackageNotFound No file/folder found for package filesystemfastapi

背景


  • 使用 poetry 管理 Python 包的时候
  • 使用 poetry build 来打包工程,报错了

Building filesystemfastapi (0.1.0)


 ModuleOrPackageNotFound


 No file/folder found for package filesystemfastapi


image.png

工程目录

image.png


pyproject.toml 文件

image.png

排查思路


  • 从报错信息来看,是 pyproject.toml 的 name 有问题
  • 进到报错提示的源码文件,发现报错信息是最后的 else 抛出的
  • 从上面的 if...elif... 可以知道,都是通过是否为文件夹/文件来判断的
  • 所以最终可以猜测是我的路径有问题,而且跟 name 有关系


image.png


第二步

所以我改了源码,打印一下涉及的路径和变量

image.png

再执行一次 poetry build

> poetry build                                                                              
Building filesystemfastapi (0.1.0)
filesystemfastapi /Users/polo/Downloads/filesystemfastapi
/Users/polo/Downloads/filesystemfastapi/filesystemfastapi /Users/polo/Downloads/filesystemfastapi/filesystemfastapi.py
/Users/polo/Downloads/filesystemfastapi/src/filesystemfastapi /Users/polo/Downloads/filesystemfastapi/src/filesystemfastapi.py


可以看到问题出在哪了,出现了两层 filesystemfastapi,而我的 fastapi 应用代码是放在 filesystemfastapi/app 下的

 

解决方案


  • 将 pyproject.toml 的 name 改成 app 就可以了
  • 所以,name 应该写放应用程序代码的目录,不可以乱设置哦


> poetry build                                                                            
Building app (0.1.0)
app /Users/polo/Downloads/filesystemfastapi
/Users/polo/Downloads/filesystemfastapi/app /Users/polo/Downloads/filesystemfastapi/app.py
/Users/polo/Downloads/filesystemfastapi/app
  - Building sdist
  - Built app-0.1.0.tar.gz
app /Users/polo/Downloads/filesystemfastapi
/Users/polo/Downloads/filesystemfastapi/app /Users/polo/Downloads/filesystemfastapi/app.py
/Users/polo/Downloads/filesystemfastapi/app
  - Building wheel
  - Built app-0.1.0-py3-none-any.whl 


从打印结果能看到已经成功了,而且路径也没有问题

从源码看的话,走的是红框的业务流程


image.png

相关文章
|
2月前
|
机器学习/深度学习 数据挖掘 Python
Python编程入门——从零开始构建你的第一个程序
【10月更文挑战第39天】本文将带你走进Python的世界,通过简单易懂的语言和实际的代码示例,让你快速掌握Python的基础语法。无论你是编程新手还是想学习新语言的老手,这篇文章都能为你提供有价值的信息。我们将从变量、数据类型、控制结构等基本概念入手,逐步过渡到函数、模块等高级特性,最后通过一个综合示例来巩固所学知识。让我们一起开启Python编程之旅吧!
|
1月前
|
数据采集 分布式计算 大数据
构建高效的数据管道:使用Python进行ETL任务
在数据驱动的世界中,高效地处理和移动数据是至关重要的。本文将引导你通过一个实际的Python ETL(提取、转换、加载)项目,从概念到实现。我们将探索如何设计一个灵活且可扩展的数据管道,确保数据的准确性和完整性。无论你是数据工程师、分析师还是任何对数据处理感兴趣的人,这篇文章都将成为你工具箱中的宝贵资源。
|
1月前
|
机器学习/深度学习 人工智能 算法
深度学习入门:用Python构建你的第一个神经网络
在人工智能的海洋中,深度学习是那艘能够带你远航的船。本文将作为你的航标,引导你搭建第一个神经网络模型,让你领略深度学习的魅力。通过简单直观的语言和实例,我们将一起探索隐藏在数据背后的模式,体验从零开始创造智能系统的快感。准备好了吗?让我们启航吧!
76 3
|
2月前
|
弹性计算 数据管理 数据库
从零开始构建员工管理系统:Python与SQLite3的完美结合
本文介绍如何使用Python和Tkinter构建一个图形界面的员工管理系统(EMS)。系统包括数据库设计、核心功能实现和图形用户界面创建。主要功能有查询、添加、删除员工信息及统计员工数量。通过本文,你将学会如何结合SQLite数据库进行数据管理,并使用Tkinter创建友好的用户界面。
77 2
从零开始构建员工管理系统:Python与SQLite3的完美结合
|
2月前
|
数据采集 XML 存储
构建高效的Python网络爬虫:从入门到实践
本文旨在通过深入浅出的方式,引导读者从零开始构建一个高效的Python网络爬虫。我们将探索爬虫的基本原理、核心组件以及如何利用Python的强大库进行数据抓取和处理。文章不仅提供理论指导,还结合实战案例,让读者能够快速掌握爬虫技术,并应用于实际项目中。无论你是编程新手还是有一定基础的开发者,都能在这篇文章中找到有价值的内容。
|
2月前
|
JSON 前端开发 API
使用Python和Flask构建简易Web API
使用Python和Flask构建简易Web API
121 3
|
2月前
|
存储 API 数据库
使用Python和Flask构建简单的RESTful API
使用Python和Flask构建简单的RESTful API
|
2月前
|
JSON 关系型数据库 测试技术
使用Python和Flask构建RESTful API服务
使用Python和Flask构建RESTful API服务
|
3月前
|
数据采集 JSON 数据处理
抓取和分析JSON数据:使用Python构建数据处理管道
在大数据时代,电商网站如亚马逊、京东等成为数据采集的重要来源。本文介绍如何使用Python结合代理IP、多线程等技术,高效、隐秘地抓取并处理电商网站的JSON数据。通过爬虫代理服务,模拟真实用户行为,提升抓取效率和稳定性。示例代码展示了如何抓取亚马逊商品信息并进行解析。
抓取和分析JSON数据:使用Python构建数据处理管道
|
2月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
利用Python和TensorFlow构建简单神经网络进行图像分类
利用Python和TensorFlow构建简单神经网络进行图像分类
67 3