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

使用setup.py安装自定义Python包时遇文件占用错误求助

自定义Python包安装报错处理

项目结构

/SRC
   /package_one
        __init__.py
        script.py # script.py 从functionality.py导入内容 
   /package_two
        __init__.py
        functionality.py
setup.py

代码片段

script.py

from package_two import functionality
functionality.execute()

functionality.py

def execute(): 
    print("Running functionality")

setup.py

from setuptools import setup, find_packages
setup(name='pckage_two', packages=find_packages())

问题

在VS Code的Anaconda终端执行安装命令:

C:\Users\XXXX\XXXX\src> python setup.py install 

出现错误:

the process cannot access the file because it is being used by another process: 'c:\\users\\XXXX\\anaconda3\\lib\\site-packages\\pckage_two-0.0.0-py3.9.egg'

环境补充:使用Anaconda+VSCode,已在两个终端分别尝试过安装命令。

解决步骤

  1. 释放文件占用
    • 关闭VS Code中所有package_two相关的文件标签,终止所有正在运行的Python进程(包括Anaconda后台进程),再重新执行安装命令。
  2. 改用开发模式安装
    开发模式不会生成静态.egg文件,而是创建源码链接,避免文件锁定问题:
    pip install -e .
    
    或者用setuptools的开发模式:
    python setup.py develop
    
  3. 手动清理残留文件
    若进程关闭后仍无法安装,直接删除c:\\users\\XXXX\\anaconda3\\lib\\site-packages\\pckage_two-0.0.0-py3.9.egg文件,再重新执行安装。
  4. 修正包名不一致问题
    setup.py中包名写的是pckage_two(缺一个'a'),但实际目录是package_two,建议统一包名:
    from setuptools import setup, find_packages
    setup(name='package_two', packages=find_packages())
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 21:40:24