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包名称到新的项目中。
然后安装依赖包。
uv sync -f .\win_amd64\ --no-index
-f 等同于--find-link,指定依赖包的所在的目录
--no-index表示通过f指定的目录安装依赖包。
验证
通过uv run运行项目中py文件,验证是否安装成功。
注意点
在使用win平台离线安装依赖包时,可能会报No sollution found when resolving dependencies这个错误,
上图示例是在安装
tqdm的过程中出现的,意思是tqdm安装依赖colorama,但是cororama没有找到。
造成的原因是在第一步导出依赖包到requirements.txt中,没有包含colorama包,具体原因我也不清楚。
解决办法就是手动在requirements.txt文件中,手动添加这个包就行了,然后再下载所有的依赖包。
公众号
更多优秀内容敬请关注本公众号Code牛马!!!