2024-04-19 05:06:10 发布
网友
我正在现有项目中试用Poetry。它最初使用pyenv和virtualenv,因此我有一个带有项目依赖项的requirements.txt文件
requirements.txt
我想使用poethy导入requirements.txt文件,以便第一次加载依赖项。我查阅了诗歌的文献资料,但还没有找到一种方法。你能帮我吗
我知道我可以手动添加所有包,但我希望有一个更自动化的过程,因为有很多包
poetry不直接支持这一点。但是,如果您有一个手工制作的所需软件包列表(最好没有任何版本号),其中只包含主要依赖项,而不包含依赖项的依赖项,那么您可以这样做:
poetry
$ cat requirements.txt|xargs poetry add
我很感激这可能有点晚,但你可以使用
poetry add `cat requirements.txt`
我没有足够的声誉来评论,但对@Liang的回答的一个改进是省略回声而称之为诗歌本身
cat requirements.txt | grep -E '^[^# ]' | cut -d= -f1 | xargs -n 1 poetry add
在我的例子中,这成功地将包添加到了pyproject.toml文件中
pyproject.toml
这是我的requirements.txt文件的一个片段,仅供参考:
pytz==2020.1 # https://github.com/stub42/pytz python-slugify==4.0.1 # https://github.com/un33k/python-slugify Pillow==7.2.0 # https://github.com/python-pillow/Pillow
当调用cat requirements.txt | grep -E '^[^# ]' | cut -d= -f1(注意为了演示省略了xargs -n 1 poetry add)时,它将输出以下内容:
cat requirements.txt | grep -E '^[^# ]' | cut -d= -f1
xargs -n 1 poetry add
pytz python-slugify Pillow # NOTE: this will install the latest package - you may or may not want this.
添加开发依赖项与添加-D或--dev参数一样简单
-D
--dev
# dev dependancies example cat requirements-dev.txt | grep -E '^[^# ]' | cut -d= -f1 | xargs -n 1 poetry add -D
最后,如果您的开发人员需求是从父需求文件安装的,例如:
-r base.txt package1 package2
然后,当POMETH运行时,这将生成错误,但是,它将继续通过-r base.txt行并按预期安装包
-r base.txt
在Linux manjaro上进行测试,并按照说明here安装诗歌
poetry
不直接支持这一点。但是,如果您有一个手工制作的所需软件包列表(最好没有任何版本号),其中只包含主要依赖项,而不包含依赖项的依赖项,那么您可以这样做:我很感激这可能有点晚,但你可以使用
我没有足够的声誉来评论,但对@Liang的回答的一个改进是省略回声而称之为诗歌本身
cat requirements.txt | grep -E '^[^# ]' | cut -d= -f1 | xargs -n 1 poetry add
在我的例子中,这成功地将包添加到了
pyproject.toml
文件中这是我的
requirements.txt
文件的一个片段,仅供参考:当调用
cat requirements.txt | grep -E '^[^# ]' | cut -d= -f1
(注意为了演示省略了xargs -n 1 poetry add
)时,它将输出以下内容:添加开发依赖项与添加
-D
或--dev
参数一样简单最后,如果您的开发人员需求是从父需求文件安装的,例如:
然后,当POMETH运行时,这将生成错误,但是,它将继续通过
-r base.txt
行并按预期安装包在Linux manjaro上进行测试,并按照说明here安装诗歌
相关问题 更多 >
编程相关推荐