当前位置: 首页 > news >正文

python 项目怎么在别的电脑上运行已经开发好的代码呢 不带venv

完整一步步操作(Windows CMD)

第一步:进入项目目录,激活虚拟环境

打开 cmd,cd 到你的 ai-asr 文件夹

cmd

cd /d D:\java\python\ai-asr call .venv\Scripts\activate

激活成功后,命令行前面会出现(.venv)标识。

第二步:导出依赖清单

cmd

pip freeze > requirements.txt

执行完成,ai-asr 文件夹下会生成requirements.txt文件。里面记录当前 venv 所有安装包 + 精确版本(nltk、funasr、torch、flask…… 全部在内)。

第三步:目标服务器使用这份清单

服务器不要拷贝 .venv

  1. 上传代码 + requirements.txt,删除旧的.venv
  2. 在服务器打开 cmd,进入项目目录,新建虚拟环境

cmd

D:\java\python\python310\python.exe -m venv .venv call .venv\Scripts\activate pip install -r requirements.txt

等待全部包自动安装完成。

补充重要知识点

  1. 离线安装方案(服务器无法联网必备)本机激活 venv 后下载所有 whl 离线包:

cmd

pip download -d packages -r requirements.txt

会生成packages文件夹,把这个文件夹一起传到服务器,离线安装:

cmd

pip install --no-index --find-links=packages -r requirements.txt
  1. 避坑提醒不要在没有激活 venv 的时候执行pip freeze,导出的是外层 python 的包清单,不是项目需要的!

附赠优化后的启动脚本(直接调用 venv 内 python,绕过容易失效的 activate)

bat

@echo off chcp 65001 cd /d "%~dp0" .venv\Scripts\python.exe ai-asr-service.py pause

好处:不再依赖 call activate,不会出现激活静默失败,只要 venv 内部文件完整就能运行。⚠️依然提醒:跨机器新建 venv,不要直接复制 venv 文件夹

如果你需要,我顺带给你一份一键新建环境 + 自动安装依赖的部署 bat。

D:\java\python\python310\python.exe -m venv .venv 这个python是不是想放在那个目录都行

核心答案

是的,这条命令里的D:\java\python\python310\python.exe是【母本 Python 解释器】,这个解释器本身放在任意目录都可以,只要路径正确、能正常运行。


拆解这条命令含义

plaintext

D:\java\python\python310\python.exe -m venv .venv
  1. 前面一长串:用来创建虚拟环境的母体 Python 程序(你的绿色便携 Python3.10);你可以把python310文件夹挪到D:\soft\python310,命令改成:

    plaintext

    D:\soft\python310\python.exe -m venv .venv

    依旧能正常创建.venv

  2. 末尾.venv:代表虚拟环境文件夹创建在【当前 cmd 工作目录】

举例子:cmd 当前路径在D:\java\python\ai-asr执行命令 → 在ai-asr\.venv生成虚拟环境。

如果你想自定义虚拟环境存放位置,可以写绝对路径:

plaintext

D:\java\python\python310\python.exe -m venv D:\env\ai-asr-env

⚠️两个关键限制(非常重要,踩坑关键点)

  1. 创建出来的.venv,不能随便移动文件夹,更不能跨电脑复制创建时,.venv/pyvenv.cfg硬编码记录【母体 Python 的绝对路径】。

    • 本机:母体 Python 不动,仅仅挪动项目文件夹,偶尔可以运行;
    • 跨电脑:直接复制.venv极高概率异常(就是你之前遇到的问题)。
  2. 母体 Python 文件夹(python310)挪动之后,旧的.venv 会失效!假设你原先:母体路径D:\java\python\python310,生成了.venv之后你把python310移动到D:\soft\python310原来创建的.venv无法继续使用,找不到母解释器,只能删掉重建。


结合你的部署流程最佳实践

  1. python310绿色包固定一个路径,不要再随意挪动;
  2. 服务器上不要拷贝本地的.venv,解压代码后现场执行这条命令新建环境;
  3. 启动脚本直接调用.venv\Scripts\python.exe,放弃容易失效的call activate

bat

@echo off chcp 65001 cd /d "%~dp0" .venv\Scripts\python.exe ai-asr-service.py pause

补充小技巧

如果你不想写很长的绝对路径,cmd 先切换到 python310 目录执行也行:

cmd

cd /d D:\java\python\python310 python.exe -m venv D:\java\python\ai-asr\.venv

效果完全一致。

上传代码 + requirements.txt,删除旧的.venv 在服务器打开 cmd,进入项目目录,新建虚拟环境 进入那个目录

服务器完整分步操作(复制直接执行)

1、先进入你的项目目录(根据你服务器实际路径修改)

cmd

cd /d D:\java\python\ai-asr

2、删除旧的、拷贝过来失效的 .venv(必须执行)

cmd

rmdir /s /q .venv

3、使用绿色 Python310,新建干净虚拟环境

cmd

D:\java\python\python310\python.exe -m venv .venv

执行完毕,当前目录生成全新.venv

4、激活虚拟环境

cmd

call .venv\Scripts\activate

✅激活成功:命令行开头出现(.venv)

5、读取 requirements.txt 自动安装所有依赖

cmd

pip install -r requirements.txt

等待全部库安装完成(nltk、funasr、torch 等)

6、测试启动(两种方式任选)

方式①:手动 cmd 测试

cmd

python ai-asr-service.py

方式②:使用优化后的start.bat不依赖 activate,推荐长期使用

bat

@echo off chcp 65001 cd /d "%~dp0" .venv\Scripts\python.exe ai-asr-service.py pause

⚠️重点避坑清单

  1. 绝对不要把本地电脑生成的.venv 打包上传服务器,必须服务器现场新建;
  2. 确保服务器上D:\java\python\python310\python.exe真实存在,路径不能错;
  3. 如果服务器无法联网:提前在本机下载 whl 离线包,上传后离线安装;
  4. 以后更新代码:只上传 py、models、requirements.txt,永远不上传.venv 文件夹

额外:一键部署脚本(deploy.bat,放到项目根目录,双击自动执行整套流程)

bat

@echo off chcp 65001 cd /d "%~dp0" echo 正在清理旧虚拟环境... rmdir /s /q .venv echo 创建全新虚拟环境 D:\java\python\python310\python.exe -m venv .venv echo 激活环境并安装依赖 call .venv\Scripts\activate pip install -r requirements.txt echo 环境部署完成! pause

注意:服务器能联网才能直接运行这个一键脚本。

http://www.jsqmd.com/news/1291338/

相关文章:

  • 谷歌Frozen v2 AI芯片放弃CoWoS封装,转向片上SRAM设计分析
  • PhotoRec数据恢复:为什么这个开源神器能找回480+种文件格式?
  • SpringBoot组件扫描冲突解决:@ComponentScan excludeFilters五种过滤器详解
  • 2026年7月广西省移动1000M融合宽带我的真实踩坑与实操 - 找卡家园
  • 粒子群优化模糊PID控制的Matlab实现与工程应用
  • Java集成K3Cloud WebApi实战:认证、会话管理与数据交互详解
  • 高通QRB5165硬件设计实战指南:从核心板选型到高速信号完整性
  • RAG技术与向量索引算法实战指南
  • 2026隆昌门窗推荐榜:工厂直销与本地小店区别有多大? - 家居装修资讯
  • 网盘直链下载助手完整指南:三步实现高速下载,告别网盘客户端
  • 【Java 】Java Web农户土特产公益展销台账系统(源码+文档)【独一无二】
  • 小米11无线ADB调试全攻略:告别数据线,提升Android开发效率
  • 如何用ncmdump解决网易云音乐NCM格式的跨平台播放难题
  • 2026年7月浙江便当保温袋/浙江生鲜配送保温袋行业实力厂家_华昊无纺布有限公司 - 品牌宣传支持者
  • stm32进入函数一直弹这个
  • LLM路由技术:原理、实践与优化策略
  • Python年龄计算器实现与边界条件处理
  • STM32智能小车开发全攻略:从PID循迹到多传感器融合实战
  • 解决Visual C++安装失败0x80070666:从原理到实战的完整指南
  • 北京各区小学上学期期中语文、数学、英语试卷及答案解析
  • 硬件工程师简历撰写指南:STAR-PD法则与专业技能模块优化
  • 终极免费方案:解锁Microsoft 365完整功能的完整指南
  • Kylin V10 SP1手动编译Python 3.11全流程与深度优化指南
  • Windows上安装APK文件的终极解决方案:告别模拟器,拥抱高效
  • 2026内江豪宅门窗推荐榜:可到工厂监造的5大品牌实力横评 - 家居装修资讯
  • 如何在3分钟内快速解锁Figma中文界面:免费高效的汉化插件终极指南
  • 2026年7月广西省移动1000M融合宽带避坑指南一篇说透 - 找卡家园
  • 2026 年桐庐值得关注的配电柜自动点胶厂家推荐几家,车间里的这台机器,竟把弱电柜的密封问题解决得服服帖帖? - 企业官方推荐【认证】
  • 阿里云ACA认证备考指南与实战经验分享
  • Python与PyCharm零基础安装配置指南:从环境搭建到高效开发