UV离线迁移Python环境步骤

206 阅读1分钟

Linux向Windows迁移

1. 在Ubuntu上准备离线包
# 1.生成项目锁文件(确保版本一致)
uv lock
# 2. 生成依赖清单
uv pip compile pyproject.toml -o requirements.txt
# 3.下载所有依赖的离线安装包
pip download -r requirements.txt -d ./win_amd64 --python-version 3.12 --platform win_amd64 --only-binary=:all:
2. 传输文件到离线Windows

首先要确保Windows平台已经安装了uv和对应的python版本(要与Linux项目中所用的python版本相同)。然后将离线包和项目中的pyproject.toml到Windows环境中去,接着初始化项目。

uv init project-name

项目初始化完成后,复制Linux项目中的pyproject.toml中的dependencies包名称到新的项目中。 image.png 然后安装依赖包。

uv sync -f .\win_amd64\ --no-index

-f 等同于--find-link,指定依赖包的所在的目录 --no-index表示通过f指定的目录安装依赖包。

验证

通过uv run运行项目中py文件,验证是否安装成功。

注意点

在使用win平台离线安装依赖包时,可能会报No sollution found when resolving dependencies这个错误, image.png 上图示例是在安装tqdm的过程中出现的,意思是tqdm安装依赖colorama,但是cororama没有找到。 造成的原因是在第一步导出依赖包到requirements.txt中,没有包含colorama包,具体原因我也不清楚。 解决办法就是手动在requirements.txt文件中,手动添加这个包就行了,然后再下载所有的依赖包。

公众号

image.png 更多优秀内容敬请关注本公众号Code牛马!!!